Refactored readers into separate module.  Refactored classes for inputs into separate module.  Moved hard-coded file paths to parameters. Added unit tests for readers.
Moved samplers and markov models into algorithms module.  Added unit tests for RouletteWheelSampler, MarkovModel, and MarkovModelBuilder
Refactor store generator into separate module and add unit tests
Renamed datamodels.inputs to datamodels.input_models
Moved customer generator into generators.  Added unit test for NameSampler and stubs for LocationSampler and CustomerGenerator
Fixed invalid import in simulation.py from previous commit and moved CustomerState into datamodels package
moved transaction simulator into transaction_generator package
Moved Transaction into output_models
moved writers into their own package
Renamed simulators to generators for consistency
removed dead code
Added BoundedMultiModalGaussianSampler
Modified product MSM builder to use BoundedMultiModalGaussianSampler
Moved parameters for product purchasing MSMs to simulation parameters
Refactor purchasing profile generation
updated readme to include unit tests
Fixed spacing in README
moved simulation parameters from Customer into new CustomerTransactionParameters and create generator
remove duplicate line
Began refactoring transaction generator so that one generator can be used for multiple customers