Fix Base32 implementation, closes #16

The original Base32 code was lifted from another project and
was primarily designed to work with Google Auth's 16 character
secrets. This should fix any issue with odd length strings and
has been tested with Google Auth 2.49