ECDSA secp256k1 Bouncy Castle

- Implemented proper signature verification for transactions using
Bouncy Castle
--- This sort-of "required" moving the protocol-specific types into a
more visible area; a later change will probably just have the
overarching cryptocurrency definition also include protocol serializers
and deserializers.
--- This is by far the most CPU-intensive operation that Evercoin does.
- Related to the above, exposing a few more values from the protocol on
the underlying transaction-related types.
- Related to the CPU usage, trying to do more super-clever things during
blockchain loading to parallelize and defer whatever I can think of.
--- Blocks are available for use as a "prev block" as soon as we've
parsed all their transactions, even before running their scripts.
--- Each transaction script is run as part of a separate task, letting
the thread pool work out parallel scheduling.
- Splitting up some of the transaction script stuff, per new
realizations about how the script is used.
- Creating a new (unused) chain store fully backed by memory.
--- Used this to help rule out LevelDB as being at all related to the
significant delays observed for about a thousand or so blocks starting
around #51728.
- Renames, sorry about the history.