Faster Cythonized Dispatcher

Dispatcher is now derived from a C-extension base class.  This improves
performance two ways:

1. Being called via `__call__` is much faster
2. Attribute lookup (i.e., `_cache`, `funcs`, etc.) is much faster

I also added an optimization in the Cython version of Dispatcher when
dispatching for a single positional argument by not constructing a tuple
for the key for `_cache`.  I do, however, pass a tuple to `resolve`.

Cythonized versions should not be used in PyPy.  Hopefully the check works.

TravisCI script was modified to test with and without using Cython, and it
verifies if the C core was used when expected.  Hopefully this works too.