Model Requirements, Provides, and Obsoletes in the database
Pull the requires, provides, and obsoletes from PyPI and persist it
Handle the deprecrated requires like fields
Resolve a mistaken in instead of =
Properly handle extracting requirements from setuptools

* Looks for a *.egg-info/requires.txt and parses it into PEP345
  like metadata
* Attempts to make sure that "Hard" (e.g. from PEP345) requirements
  always win out over "approximate" (e.g. from setuptools)
  requirements
Don't use INNER JOIN to handle the requirements

Apparently there is some error from attempting to use inner join
for requirements/provides/obsoletes. Switching to SQLA's normal
join works fine.
Upgrade Flask-Script
Fix PyLint errors
Merge pull request #34 from dstufft/upgrade-flask-script

Upgrade Flask-Script
Merge pull request #24 from dstufft/store-requirements

Store Requires/Provides/Obsoletes
Move to a simpler journal based synchronization

Removes the old find all updated -> update -> find all deleted ->
delete workflow and replaces it with one that tracks the journal
better.
Enable full and project based synchronization

By project synchronization is useful to manually force a particular
project to update itself. Full is useful especially as a catch all
run once a day or so command just to make sure nothing got lost
in the shuffle.
Update Pylint config to not error on too many return statements
Remove a no longer used setting

With the removal of eventlet there is no longer a mechanism for
timing out a synchronization.
Fix trigger to correctly normalize projects.name

Without the g flag on regexp_replace PostgreSQL only replaces
the first match (apparently). Using the g flag has it replace
it across the entire string.
Query by normalized instead of name

Querying by name causes a clash in the unique field normalized
when someone deletes a project and recreates it with a differently
cased name. This update will have it search by normalized instead.
However to ensure that an update isn't being applied to a project
with the wrong name we assert that the name matches.
PEP8
Remove a now unused method on fetcher
Simplify user agent to just warehouse/VERSION
Remove the deletions test now that deletions is gone