Resolve "Add in-place base64 decoder"
Closes #70 (closed).
- Previously, line breaks were removed from the string to be decoded by creating a copy of the argument. The new version skips line breaks while walking through the string, so a copy is not needed.
- There are new
base64URLDecodeUniquewhich do not even create a new string for the decoded value but overwrite the original. (If I'm not mistaken these versions don't allocate any memory on the heap at all.)
- Tests added for all encoding and decoding variants.