DEV: Updates README with numpy installation tip.

Adds `pip install numpy` to the installation notes,
since `pip install zipline` will not work out of the box
if numpy is not installed beforehand.
BUG: Moved asserts back to before calculations that rely on them.

This means we get a failed assert immediately, instead of an
OverflowError later.
MAINT: Using zone attribute of tzinfo instead of string
REL: v0.5.7

Highlights, with thanks to contributors inline:

- Runtime performance improvements
- Fixed the omission of peformance messages on days with no trades
- Changes to batch_transform implementation
-- supports sid filtering
-- performance improvements using pandas
-- added an option for only computating when there is a window length's
   worth of data
- Added new risk metrics
-- Sortino
-- information ration
  (Ryan Day, ryanday2@gmail.com @rday)
- Added stop and limit orders
  (Tony Worm, verdverm@gmail.com @verdverm)
- Added variable recording
- Deprecated market_aware and delta kwargs to EventWindow
- Fixes to trading calendars for missing holidays
- Added TradingEnviorment context manager
- Added support for streaming through dividends
- Yahoo source now has OHLC
- Updates downloaded benchmark and treasury data when new data is available.
  (Ryan Day, ryanday2@gmail.com @rday)
- Added optional adjustment of Yahoo data
  (Jeremiah Lowin, jlowin@lowindata.com @jlowin)
MAINT: Moves internal state variables in performance tracker.

Slight refactoring of grouping the tracking variables in the
PerformanceTracker together.

So that it's easier to see which are config members and which are
members used to track internal state.
MAINT: Updates copyright year of perf_tracking tests.
MAINT: Removes unused mock data function from gens.utils

This function is unused, and on the general path of moving testing
functions out of gens.utils
 # Please enter the commit message for your changes. Lines starting
MAINT: Removes alternate function from gens.utils

This function is no longer refrenced elsewhere in the codebase.
MAINT: Updates copyright year on gens.utils module.
MAINT: Moves create_trade out of gens.utils

Slight refactoring of moving create_trade so that it's alongside
other testing/mock data utilities, instead of part of the gens module.
MAINT: Uses Transaction object in tests instead of ndict.

So that Transaction object behavior is exercised, uses the Transaction
object in performance module tests instead of ndict.

Also, adds fields to the __init__ of Transaction, to make the
definition of the object more well defined.
adds an optional filter to the algorithm's date_sorted_sources
ENH: Adds an optional filter to the algorithm's date_sorted_sources

So that a filter function can filter out sids on a 'static' source,
when the universe of sids changes.

e.g. when using fetch_csv with a changing universe of stocks.
Merge pull request #114 from quantopian/filter_sources

adds an optional filter to the algorithm's date_sorted_sources
MAINT: Renames parameter to TradeSimulationClient.

Renames from environment -> sim_params to match the type of the
argument passed.

(A refactoring had changed it to SimulationParams.)
MAINT: Removes unused currentValue method on Position object.

This method became unused when vectorizing position totals.
MAINT: Restricts dates to trading calendar in risk comparison test.

Converts the risk iterative and batch comparison tests to use
the trading environments next date, instead of just advancing by day,
so that the returns being passed into the RiskMetrics in the unit
test are using the same trading calendar as the internal checks for
trading days.

Fixes a case where empty return periods were being into
`calculate_period_returns`

Clearing the way for the pandas based optimization of the risk module.
BUG: Avoids install errors caused by lack of pandoc binary.

The pyandoc module throws an OSError of:
"No such file or directory",
when the underlying pandoc binary does not exist.

This error has caused confusion for numerous people during pip
installation.

pandoc is only needed on upload to PyPI to convert to ReST.
So, instead of doing a try/except on the `import pandoc` for all cases,
now checking whether or not 'upload' was invoked when calling setup.py,
so that only maintainers have to worry about installation of pandoc.

By only exercising the pandoc logic when
REL: v0.5.8

- Fixes bug/confusion caused by pandoc conversion in setup.py
- Slight refactorings, removing missing methods, etc.
MAINT: Adds floating point tolerance to risk metric comparison tests.

In preparation of changing how risk metrics are calculated,
this makes the checking of results more tolerant to floating point
rounding, since upcoming changes change the results by a neglible margin.