Test Case for failing signatures and backwards compatible fix

This pull request replaces my last one which wasn't backwards compatible, this one is.

    - Added unit test case to better test signing and show the bug. Current test only ensures that you can sign a fixed string. Replaced with a test that generates lots of random strings. Old method reliably fails the test in under ~2000 passes.

- Reworked auth serialization code to use the sized of the signature for splitting up the string as well as seperator splitting. This should be backwards compatible, in fact the encoding method remains unchanged.