spandex support

Changes in simulation framework to support spandex:

 - Support objects that act like pandas DataFrame and Series.
 - Ability to disable table copies where possible.
 - Python 3 compatibility.

spandex is introducing a TableFrame object which acts like a read-only DataFrame for simulation purposes but wraps a PostgreSQL table. It currently supports querying entire column(s) as Series and caching those queries. Not copying TableFrame columns where possible would save memory. 

spandex supports both Python 2 and 3.

Other changes:
 - Slight downgrade of dependency revision numbers for Ubuntu 14.04 support.
Yes. Currently, we call `.copy()` on the copy to make a second copy.