ENH: Add simulated random trade source.

This adds a new data source that emits events
with certain user-specified frequency (minute
or daily).

This allows users to backtest and debug an
algorithm in minute mode to provide a cleaner
path towards Quantopian.
STY: Refactored simulation code in response to @richafrank's comments.
WIP: Initial port of history.
ENH: Adapt history() to work on zipline.
ENH: Add OHLC to simulated data source
BUG: Random source did not generate last days' event
TST: Changed unittest to depend on random seed.
TST: Volume is variable now.
BUG: Moving intialize to run() requires separate call to set_algo_instance().
ENH: Move initialize back to __init__ and setting up history to run().
Resolved merge conflict.