WIP: Add ScriptInterpreter for script evaluation

This PR adds the ScriptInterpreter class, which allows to execute bitcoin Scripts.
It adds tests using data from bitcoind, to be sure it's working correctly.

Big thanks to @ryanxcharles, many parts of this code were ported from his version at https://github.com/ryanxcharles/fullnode
This really clutters the test case battery. Can we get all tests in the same `it`?