avoid allocating unnecessary intermediate buffer also introduce new method to let a user optimistically try and encode back into an existing buffer, if it isn't large enough, it silently allocates a new one and returns it
fixes issue #68
this avoids cluttering godocs with the license
closes #40
updated german analyzer to use this normalizer closes #65
closes #67