Hashids constructor & decode function behaviour inlined with rest of Hashids ports

* Constructor accepts duplicate chars
* decode function returns empty list for decoding with wrong salt