Make it easy to run linters and unit tests

Add a make file containing the following targets:

* help
* lint
* test

List out development dependencies in `requirements-dev.txt`. Mention both the
make file and requirements file in the readme.

Both the linters and unit tests pass:

    $ make lint
    flake8 .
    pylint --reports=n --disable=I nailgun tests setup.py
    No config file found, using default configuration
    $ make test
    python -m unittest discover --start-directory tests --top-level-directory .
    ..............No handlers could be found for logger "nailgun.client"
    ................
    ----------------------------------------------------------------------
    Ran 30 tests in 0.006s

    OK
Add `tests` directory to `make lint` command

Add a `pylint:disable` directive to a block of code that should not be fixed in
any way. `make lint` now passes under Python 2, but issues a few more pylint
warnings under Python 3.
WIP: Add `setup.py` file

This file is "a setuptools-based script for installing NailGun."

FIXME: show output of sucessfully installing package w/pip