BLD: Move statsmodels from dev requirements into main requirements.

Pandas website states statsmodels is needed for parts of pandas.stats.
Also, update statsmodels to 0.5.0.

Upgrade of version is to both keep up to date, and to improve
performance on lazy imports, as fixed by
https://github.com/statsmodels/statsmodels/issues/573
DOC: More generic PostInit error messages.

Make the error messages for {DoBadThing}PostInit no longer reference "the
simulation", since the algorithm may not actually be running as a simulation.
BLD: statsmodels requires patsy

Since statsmodels requires patsy, and statsmodels is now in
requirements.txt instead of requirements_dev.txt, patsy also needs to
be in requirements.txt instead of requirements_dev.txt.
BLD: List patsy before statsmodels in requirements.txt
BLD: Upgrade numpy from 1.8.0 -> 1.8.1

Keep numpy package up to date.
1.8.1 is a bug fix release, so should be no breaking changes.
PERF/BUG: Make the portfolio property call `updated_portfolio`.

Make the portfolio property on TradingAlgorithm call `updated_portfolio`
internally.  This prevents needless recomputation of the portfolio between
calls to `handle_data`, and also prevents issues where the portfolio object
could be unexpectedly modified in place in the body of a `handle_data` call.

Noteworthy finding in the course of investigating this bug:

If you modify a Python dictionary while iterating over it, the language will
only throw an exception if the size of the dictionary changes between loop
iterations; this means that you can do:
```
x = {1:1, 2:2, 3:3}
for k in x:
    old_val = x[k]
    del x[k]
    x[f(k)] = old_val
    print k
```
and you'll only get an error if f(k) is already a key in the dictionary.
This can lead to bizarre/nondeterministic behavior in the key iterator.
STY: Remove trailing empty line from requirements file.
BLD: Upgrade requests dependency to 2.3.0

Upgrade requests from 2.2.0 to 2.3.0

To keep up-to-date, Changelog does not appear to have any changes
that would affect our usage one way or the other.
BLD: Upgrade six library to 1.6.1

From 1.5.2 -> 1.6.1

Keep package up to date.
BLD: Upgrade Cython dependency.

Upgrade Cython from 0.20 -> 0.20.1 to keep package up to date.
BLD: Upgrade Logbook to 0.7.0

Keep library up to date.
BLD: Upgrade pytz to 2014.3

Keep library up to date.
BLD: Order scipy install before statsmodels.

statsmodels requires scipy to build, so list the scipy install
before statsmodels so that ordered_pip.sh will install it beforehand.
BLD: Order build of pandas before statsmodels.

pandas is required for statsmodels, so order installs so
that pandas is available for at build time for statsmodels
BLD: Make TA-Lib install compatible with pip >= 1.5

Since TA-Lib's releases are hosted on Github instead of PyPI,
add the `allow-external` and `allow-unverified` flags for just
TA-Lib.

This change means that versions of pip < 1.5 can not be used,
since the flags do not exist in those versions.
ENH: Filter out empty lists from `get_open_orders`.

Filter out empty lists from `get_open_orders` so that we have consistent
behavior between the case where a user has never placed an order and the case
where the user has placed an order but it has been executed or cancelled.

A nice side-effect, which was the impetus for this change, is that you can
check if you have any open orders by doing:

```
len(get_open_orders()) == 0
```

Also adds a test for the behavior of `get_open_orders`, which was previously
lacking.
BLD: Update pyparsing to 2.0.2

2.0.1 -> 2.0.2

pyparsing is a dependency of matplotlib and should not affect
Zipline simulations.
BLD: Remove deprecated pip --use-mirrors flag.

With release 1.5 pip deprecated the --use-mirrors flag,
since that release the flag is a noop and raises a deprecation warning.
BLD: Update nose to latest version.

nose 1.3.0 -> 1.3.3
BLD/STY: Upgrade to latest versions of lint checkers.

Upgrade pep8 1.4.6 -> 1.5.7
Upgrade pyflakes 0.7.3 -> 0.8.1

Also, tweak some line indentations which now show up as errors,
because of the fixes/changes to visual indent detection between
pep8 versions.