First pass at Florida loader

Only tested with 2012 results so far.

Addresses #86
Document data quirks and add new offices

Add data quirks to loader class docstring and add new offices
that I encounter as I look through data for 2010 and 2011.

Addresses #86
Merge branch 'dev' into 86-fl_loader
Adjust target offices, use unicodecsv

I think I originally misinterpretted "State Attorney" as
"Attorney General".  I think "State Attorney" is a race we're not
concerned with.

Use ``unicodecsv.DictReader`` with a "latin-1" encoding to read some
non-ASCII characters in some of the results.

Addresses #86
Update target offices

Add the agriculture comissioner to our target offices and add
the state senate offices to the list of offices that will have
a district.

Add logging messages for skipped offices to make sure our list is
complete.

Addresses #86
Add Florida offices to fixture

First pass at adding Florida offices.  I need to double-check
these with someone with more domain knowledge as well as against
the loaded data.

Addresses #86, #91
Add Florida parties to fixture

Add parties encountered in Florida's raw results to the parties
fixture.

This opened up a number of questions about differentiating state
and national parties and whether to use state, FEC or our own
curated list of abbreviations.  I added a state field to indicate
which parties are state-specific, and to possibly differentiate
between same-named state-level parties.

I added additional abbreviation and name fields to the
``Party`` model to make the state and FEC abbreviations clear in
case a party in the state results was incorrectly mapped to an
FEC party.

I updated the Maryland transforms to use new Party abbreviations.
I'll likely have to write transforms to map some state-level
parties to canonical parties.

Addresses https://github.com/openelections/core/issues/91
Merge branch '86-fl_loader' into dev
Fixed validate_obama_primary_candidacy_2012

As a result of the changes made for
https://github.com/openelections/core/issues/91, the abbreviation
for the Democratic part is 'D', so the heuristics for this
validator needed to change.
wv corrections
Merge branch 'dev' of github.com:openelections/core into dev
wv post-2006 loader fix
Add validator for aggregating districty by county results

Add a validator for the aggregation done by Maryland's
``create_district_results_from_county_splits`` transform.

Addresses https://github.com/openelections/core/issues/36
Add validator for county congressional results

Add a validator, ``validate_2000_primary_congress_county_results``,
that checks that county-level results for congressional offices in the
2000-03-07 Maryland primary have been created.

This validates the ``create_2000_primary_congress_county_results``
transform.

Addresses https://github.com/openelections/core/issues/36
Clean up validate_aggregate_congressional_district_results

Query results using ``contest_slug`` and ``candidate_slug`` to avoid
having to retrieve Contest and Candidate instances.

Add assertion messages.

Addresses https://github.com/openelections/core/issues/36
Validators for result, contest and candidate counts

Add validators for result, contest and candidate counts for
Maryland's 2000 primary.  In order to describe and calculate the
expected counts, I created two utility classes,
``MDElectionDescription`` and ``Primary2000ElectionDescription``.

This was somewhat tedious to implement, but organizes this information
in a better way than calculating it within the validator functions.

It might make sense to move these definitions, especially the lists
of counties and districts, to a separate module/package or add them
to the metadata collection process.

Addresses https://github.com/openelections/core/issues/36
Include contest slug when creating, looking up candidates

The name-based candidate slug is not enough to differentiate candidates
when creating Candidate records or looking them up in transforms.

This is because of the "Other Write-Ins" candidate appears in multiple
contests.

Including a contest slug will differentiate this pseudo-candidate
between different contests.

Closes https://github.com/openelections/core/issues/97
Task to launch Python shell, bootstrapping database connection

Inspired by Django's django-admin.py shell management command.

This is much simpler, and doesn't try to use IPython or bpython,
but it works for me and it's a start.

Closes https://github.com/openelections/core/issues/105
Merge branch '36-md_validators' into dev

Work in progress on Maryland validators and shell invoke task
Include contest in candidate lookups when creating results

Now that there are multiple "Other Write-Ins" candidates, we
need to differentiate between them when looking them up to create
Result records.

This finishes what was started in
0b2918ff5f35c2d86853bc229c7ecf79b85d7432 and addresses
https://github.com/openelections/core/issues/97