EXP-125. Add the train phase to model environments.

Changes prepare phase to match train.

issue: https://jira.kiji.org/browse/EXP-125
review: https://review.kiji.org/r/904
EXP-165. Make all model lifecycle phases optional.

This commit refactors the extract and score environments in the
model lifecycle to be optional. (The prepare and train phases
are already optional.)

Reviewed by: kiyan
EXP-175. Refactor how generic cell decoding is enabled.

This commit uses changes in KijiSchema and KijiMR that allow for
configuring how cells are decoded when read to get rid of
ExpressGenericRow and ExpressGenericTable, two adapters we were using
to gain this control. These classes have been removed, and instead
table readers opened by KijiExpress are configured for generic
decoding. Additionally, the ExtractScoreJobBuilder is modified to
ensure generic decoding is enabled when an MR task is run through
KijiMR, by modifying how row data obtained in the produce method
decode their data.

Reviewed by: juliet