Merge pull request #42 from Ichimonji10/be-terse

Make function names terse. Make functions private.
Polish the testing process

Change how Travis executes tests:

* Make Travis install requirements from `requirements-optional.txt`. Formerly,
  Travis would install a set of requirements listed in `.travis.yml`.
* Make Travis run unit tests, collect coverage statistics and run doctests by
  calling make. Formerly, Travis executed unit tests and collected coverage
  statistics by executing a command listed in `.travis.yml`, and Travis did not
  execute doctests at all.

Update the makefile to support these changes.

* Add the command `test-all`.
* Trim down the command `test`.

Drop `docs/requirements.txt`, as it appears to be useless. Add
`requirements.txt`.

Flesh out the contribution guidelines in the readme.
Implement backward compatiblility

Create a class `FauxFactory`. Provide it with an identical set of public
class methods, and make them call the equivalent new-style functions. Also
provide a `codify` function that wraps the new `_make_unicode` function.

Provide a basic set of sanity tests for these wrappers.

Do not alter the module-wide variable `__all__`. This prevents the compatiblity
code from showing up in Sphinx-generated documentation or being imported by
`from fauxfactory import *`.