Merge pull request #383 from quantopian/welcome-to-the-family

symbol as an api_method
BUG: Fix crash in transforms on malformed CUSTOM events.

Fixes a crash in various transforms when providing CUSTOM events whose fields
don't match the fields required for the transform.

This is fixed by requiring all `EventWindow` subclasses to supply a `fields`
property, which returns a list of strings that are required keys for any event
that can be processed by the window.  Any CUSTOM events the don't supply the
required fields for a transform window are ignored by that window.
MAINT: Remove unused methods from `TradingAlgorithm`.

Removes unused method `raw_positions` and `raw_orders` from `TradingAlgorithm`.
These methods existed to help support features in the Quantopian codebase,
which no longer use the existing interface.
MAINT: Move call to `updated_portfolio` in `AlgorithmSimulator`.

We guarantee that `TradingAlgorithm.updated_portfolio` is called at least once
between each perf message emission.  This change moves that guaranteed call
into `AlgorithmSimulator.get_message` and adds a comment to make it clear why
updated_portfolio is being called.
ENH: Adds a new `api_method` called `get_environment` so that users may
check if their algorithm is running in zipline or on Quantopian.