Implement hermite curve variant

The hermite curve variant guarantees that the curve passes through given
control points. This is the method that applications such as Photoshop
and GIMP use for tone mapping. Consequently it will be easier to port
effects from those environments to CamanJS.

The new curve variant may be passed as an optional parameter to the
curves effect. It defaults to bezier when one is not provided.
Fix merge
Simplify API
Leftover submodule
Upgrade and fix karma
Set karma version
Whoops, fixed
Apparently TravisCI only supports Firefox now
Regen docs