This is the most different due to segwit (the rest of the messages are simple). I still need to simplify/refactor the tests, they're "messy".
* Added Message interface (similar to btcd's) * Moved Funding Request to its own file * Refacored Funding Request Code (*MUCH* better) * Various fixes