To match the DSL of the Kinesis library rename the Model interface to Record.
Noticed GetRecords error when a Shard's lease expired. * Added a timeout so we don't hit the rate limit on this type of error. * Increased the timeout when there are no Records on the stream.
* Create base Interfaces for Pipeline * Add first base implementations for Pipeline * Add initial test for core functionality