Corrects wording on event_window test, with regards to empty values.

These tests ensure that there are three, not two, empty values
at the beginning of the transform.

Also, ensures that we are using a window length of 3 on the tests.
So that wordings of errors,etc. match the window length.
Enriches message returned for test batch transform.

Adds formatting of the failing values when ReturnPriceBatchTransform's
data shape does not match the window_length.
Fixes dates used in test factory for batch transforms.

The test factory was creating non-market days.
i.e. the date range spanned the weekend.

Using pandas' BDay frequency so that only business days are created.

This specific date range doesn't have holidays, so not accounting
for holidays in the factory.

Also, widens the range of the trading calendar to cover the test dates
generated by the factory which include 1990.
Previously the trading calendar began with 2002, meaning that holiday
and weekend adjustments with the data exercised by the factory did
not trigger when run with data in 1990.

This does increase the memory footprint of the tradingcalendar module.
However, only by a couple MB, so taking the hit there to enable
correct behavior.
Moves creation of non_trading_days into a function.

So that we're not leaving rules used for configuration hanging in
module space.
Adds a trading day index to tradingcalander.

The trading day index is all business days in range minus the
non trading days we are already calculating.

Also, uses trading calendar indexes for batch transform, since the
batch transform was the only use of non_trading_days.

Instead of constantly adding and removing holidays to do market
day delta math, uses pandas DatetimeIndex to get the index of the dates
and uses the index difference to calculate market days.
Pulls alias_dt wrapper out of sequential_transforms.

So that stepping through/cProfile output are a little clearer.
Removes code branching on sequential/merged flags in StatefulTransform.

So that the unit tests exercise the same transform logic as what
is executed a TradingAlgorithm object.
Changes test_source date_gen to only emit trading days.

Based on @fawce's work on record_vars branch.
Adds the ability to record variables.

Takes the value set for a variable on handle_data and records it,
e.g.:
```
    def initialize(self):
        self.incr = 0
        self.record_variables(['incr'])

    def handle_data(self, data):
        self.incr += 1
```

Would record a variable of `incr`.

Emits the recorded variables as part of the daily performance.

This batch combins work from:
Thomas Wiecki <thomas.wiecki@gmail.com> (@twiecki)
fawce <fawce@quantopian.com> (@fawce)
Adds recorded variable to dual moving average example.

Attr: Thomas Wiecki <thomas.wiecki@gmail.com> (@twiecki)
Fixes trading day generation logic in test source.

This uses more of @fawce's original logic from record_var branch.

TODO: Add unit test to ensure that this function generates only
market days.
Adjusts start date of test algo gen to account for market dates.

When date_gen changed to use market dates, the end of this env
was run over by the date_gen.
Add the information ratio to risk metrics.

Calculates relative to the benchmark returns.
Changes unit tests asserts to UnitTest methods.

So that evaluated variables are printed on fail.
Fixes assert type of window length check.
Updates README to distinguish between backtesting and trading.
Fixes an incorrect order in examples.
Removes documentation references to pavement.

The references to pavement were causing confusion on what libraries
are needed for installation.
Update zipline/transforms/stddev.py

Fixed typo.
Merge pull request #70 from bernarpa/patch-1

Update zipline/transforms/stddev.py