separate Base58 from Base58Check, add decoding and unit tests