Code cleanup.

Some functions were renamed to better fit naming conventions, and
moved around to where they are actually used.
Fix test problem in Emacs 24.1 due to zombie buffer.
Provide option elpy-interactive-python-command.
Initialize the company cache when receiving completion candidates.

It was possible to confuse company with having annotations for
keywords from an earlier completion response when Elpy passed
on to the dabbrev backend for no completions.

Fixes #244