Fix a unique index bug in transition models

When different segments of a transition model had rows both removed
and added it could cause the new-index tracking code to produce
duplicate indexes in the added rows (because segments with rows
removed would decrement the new-index counter).

This adds a test that triggers the bug and fixes the transitioner
so that it only modifies the new index counter if rows were added
for a segment.
Merge pull request #37 from synthicity/transition-fix

Fix a unique index bug in transition models
Match existing segmented LCM groups to those in incoming fit data

When you load a segmented LCM it has pre-existing segments. When
calling .fit() the incoming data may not have all those segments
(.e.g. the data has been changed since the last fit).
This removes an existing segments that are not in the incoming data.
PEP8 fix.
Remove non-existant segments from groups before fitting

A segmented model can have stored models for segments that are not in
incoming data. This clears any stored models that are not in the incoming
data.
Adding .name attributes to Segmented regression and lcm models.
Merge pull request #38 from synthicity/lcm-misc

Segmented* fixes
Support passing strings to apply_filter_query

Strings will be passed straight through to DataFrame.query unmodified.
Merge pull request #39 from synthicity/query-str

Support passing strings to apply_filter_query
Merge branch 'master' into developer

Conflicts:
	urbansim/models/regression.py