remove pyramid_on_features from Menpo

`pyramid_on_features` was a redundant kwarg - in order to set it `True`, one had to supply a single callable to `feature` in place of a list of callables. A list was only allowed if `pyramid_on_features` was `False`.

Instead, this PR drops all that, and makes a simple rule:

1. If a single `features` is present, then we have the `pyramid_on_features=True` behavior
2. If a list of `features` present the list must be `n_levels` long, and we have the `pyramid_on_features=False` behaviour.

This is on top of #443.
a note - removing lines that say `pyramid_on_features=True` is almost certainly safe. If `feature` is not a single callable  an error would already have been raised on master. We have to be a little more careful in the cases where `pyramid_on_features=False` though - in such cases `features` that are just a single callable need to be changed to lists of length `n_levels` with the `callable` repeated.