Change uint160/uint256 to bytes instances

Probably broke things here, but they'll be fixed as more unittests are
added.
Add CScript.is_valid()
Pythonize CTransaction() and dependencies
Add Serializable base class

Serialization is now done to/from streams, with serialize() and
deserialize() provided by base class to serialize to/from bytes.
Make x() to deal with little-endian hex hashes
Pythonize CBlock and CBlockHeader