Implement a bitcoin URI parser

This parser follows the BIP 21 standard as closely as possible.