Added contructRPCOptions() to MinimalValidTimeInput and thus to MinimalValidTime(). Prior to this, the RPC did not receive important information such as the endorsing_power, nor priority of the block in question. This returned invalid time period.
Change Constants.TimeBetweenBlocks to be IntArray so that JSON unmarshal would properly parse to Ints
^^Similar, Constants.ProofOfWorkThreshold
ForgeBlockHeaderBody.Proto was a string and should be Int
p.Timestamp.String() returns non-RPC compliant timestamp; should be unix timestamp
SeedNonceHash should not be present when preapplying a block if no nonce hash is needed
InjectionBlockInput - This struct originally wanted a *Block but this type does not marshal down to what is required by the RPC. The RPC only wants the signature + shell header of the constructed block ("data") + operations to include in block ("operations"). The easiest way I saw to do this was to simply build an anonymous struct just before injecting.
Add func and associated helpers/structs to pull operations from mempool
Fixes #177 Summary of changes: