cleaning up readme
Fix conflict in README.md

Clean up README to remove text from an uncaught merge conflict.
cleanups
cleaning up
Clean up datasource API.

Add proper docstrings for published BaseDatasource methods using
Google's docstring standards
(http://google-styleguide.googlecode.com/svn/trunk/pyguide.html?showone=Comments#Comments)
.

Remove the standardized_filename and filename_from_url methods.
These are replcated on openelex.base.fetch.BaseFetcher.  The more
relevant implementation for the datasource is
BaseDatasource._standardized_filename.
Clean up docstrings for openelex.lib
properly identify general precinct files
fixed result file links for 2000, 2002 and 2004
Merge branch 'dev' of github.com:openelections/core into dev
URL as argument for BaseDatasource._filename_extension

Pass a URL to BaseDatasource._filename_extension() instead of
an election dict.  The more general case is that result
formats can differ, even within a single election, so it
makes sense to have a utility method to cleanly extract
the extension from any URL rather than just the first entry
in ``direct_links``.

Rename ``Datasource._filename_extension()`` in the Illinois
datasource to avoid changing the signature of the method on the
subclass.  In the case of Illinois, we can set the extension
of the standardized filename based soley on the election.
Datasource for Washington

First pass at implementing the datasource for Washington state.

This requires a url_paths.csv file and a custom fetch class
because some precinct-level results are archived in ZIP files.

The custom fields in url_paths.csv needed to work around the
data quirks are documented in openelex/us/wa/mappings/README.md.

PDF results still need to be converted and there are some cases
where there are multiple precinct-level files and it is unclear
which one to use.

Addresses https://github.com/openelections/core/issues/145
Add csv output option to datasource.mappings task

I wanted to be able to quickly sanity-check the mappings output,
so I added a --csvout flag to the datsource.mappings task.

In order to order the header fields in a reasonable way, I defined
the list and ordering of common mapping fields as
``openelex.base.datasource.MAPPING_FIELDNAMES``.
Add preprocessed URL for Washington .mdb results

Add a preprocessed URL for Washington State results that are
shipped in an Access database to the datasource mappings output.

The actual preprocessed result file still needs to be created
(see https://github.com/openelections/core/issues/150), but the
datasource and fetch task will be ready to consume it once
the preprocessed files are created.

Addresses https://github.com/openelections/core/issues/145
Added step for putting virtualenvwrapper.sh in .bashrc to environment setup docs
Merge pull request #159 from rabidaudio/environment_setup_documentation

Added step for putting virtualenvwrapper.sh in .bashrc to docs
RawResult bakery

* Refactor common bakery functionality into a ``BaseBaker`` class
and make ``Baker`` inherit from ``BaseBaker``.
* Clean up docstrings to clarify which methods should be overridden.
* Update Roller and Roller tests to reflect model changes.  Roller
  wasn't updated after RawResult was implemented.
* Implement separate Roller classes for Results and RawResults
* Generalize field transforms instead of expecting all field
  transforms to just be field renaming transforms.
* Exclude ``name_raw`` field from the baked output.  Eventually,
  we'll need to wire ``RawResult`` into ``Roller``, but I didn't
  want to get in these weeds until after implementing the
  ``RawResult`` bakery.
* Add ``--raw`` flag to the ``bake`` invoke task to toggle baking
  raw vs. cleaned results.
* Create a generalized function to generated election-related filenames,
  ``openelex.lib.standardized_filename()``.
* Add a roller field transform to flatten out nested dictionary fields.
  This is needed to handle ``RawResult.vote_breakdowns``.
* Add a new invoke task, ``bake.election_file`` to better reflect the
  use case of the raw bakery.  While the original bake task was designed
  around arbitrary filters, the raw bakery is designed to bake one file
  per election.
* Use unicodecsv for writing results instead of csv.
* Fix docstring for ``BaseDatasource.elections()``.

Addresses https://github.com/openelections/core/issues/152
Merge remote-tracking branch 'origin/dev' into dev