setup.py: Remove spurious +".1" version suffix
setup.py: Depend on flake8 >= 2.0
ropebackend, refactor: Do not creacte .ropeproject folder.

This folder tended to clutter projects, and I never used it. Elpy
now by default does not create this folder. If this causes problem
for some, we can add a variable to make it optional.

Closes #127
README.rst now replaces README.md.
Fix MANIFEST.in

... hat tip to Hynek at
http://hynek.me/articles/sharing-your-labor-of-love-pypi-quick-and-dirty/
rope backend: Fix a test failing on 2.7

Apparently, rope now can find more info on Thread.join, but only
in py 2.7, not 2.6. Ok?
Add requirements.txt
flake8 support: Improve flake8 detection and warning display.

First, we set python-check-command to flake8 both when flake8 is
found and when python-check-command is not set to an already
existing command. This is useful for when we have flake8 installed
only in virtualenvs, so not when elpy starts for the first time.

We also use the new variable name for flymake warnings that Emacs
24.4 introduced.

This might or might not help with #57.
Quick Installation: Note you need to require package.

Implements #104.
elpy-rgrep-symbol: Ignore .tox, build and dist directories.

These directories generally do not contain stuff we want to find.

Fixes #110.
elpy-check: Run on the whole project with prefix argument.

Closes #115.
elpy-shell-send-region-or-buffer: Adjust indentation.

When sending the current region, and the region starts out indented,
python.el would throw an indentation error. This change will dedent the
region before sending it.

Fixes #129 and #123.
Whitespace fix.
Asynchronous RPC for Elpy.

This major commit revamps the RPC implementation to handle asynchronous
calls using success/error callbacks. This should allow Elpy to remain
responsive to user input even when the backend takes a bit to respond.

Both auto-complete and eldoc now use the asynchronous interface, which
should speed up elpy considerably.

This closes #52.

Also, the RPC backend is now specific to a Project directory as well
as a Python interpreter. You can set elpy-rpc-python-command buffer-
locally to get this buffer to use a different Python implementation
to run Elpy.

This closes #107.
python-shell-get-process-name: Compatibility definition for older Emacsen.

This should fix #124.
elpy-rpc--call-blocking: Make timeout configurable.

A timeout of 1s caused problems on Travis-CI because they are
slightly loaded.
elpy-rpc--call-blocking: Actually end accept-process-output early.

The call could block indefinitely, even if the timeout passed.
elpy-rpc--filter: Keep reading after one line is processed.

With the old code, if multiple lines arrived at once, we might miss
consecutive lines. This now keeps reading while we have complete lines
available.
elpy-pkg.el.in: Small clean-up
Fix parenthesis error in elpy-pkg.el.in.