Add backend ability to understand shorter addresses.

Bitmessage should be able to understand ripe hashes shorter than 18. It's possible to generate a hash beginning with more than two \x00 characters, thus making shorter addresses than currently allowed by Bitmessage. For instance, I generated the Bitmessage address '\x00\x00\x00\x00\x9f\x1dh\xa0\xe9\xf6\x03|T\x18\x7f\xfa\x14lu\xa0'. 

With version 3 addresses, encoding this gives me 'BM-GtE4KzFCVoFiMQ7Q9gV8Xjcfo4a6aQZi'. With version 4 that this pull request introduces, encoding gives me 'BM-264tcCXR9mDXYUa1ihWUc98R1P8cdx', several characters shorter. 

Making this change is completely backwards compatible, and will allow spending a few extra minutes to generate a shorter address than would otherwise be possible.