Base58 encoder/decoder added

Base58 was chosen as it transforms a base10 integer into a short
string for the user to view. The idea behind this is that a url
submitted will be commited to the DB, an integer key emitted, and
we return the encoded representation of it as the shortened url.