Active Template Models

This PR introduces Active Template Models, i.e. Lucas-Kanade with a PCA shape model. It defines `ATMBuilder`, `ATM`, `PatchBasedATMBuilder`, `PatchBasedATM` and `LucasKanadeATMFitter` classes which are similar to their equivalent AAM classes and also adds tests. The only difference is that the `build` method takes as input `shapes` and `template` and the fitter algorithm comes from `menpo.fit.lucaskanade.image` (i.e. `ImageInverseCompositional`, `ImageForwardAdditive`, `ImageForwardCompositional`). 

Finally, the PR introduces an `AMMultilevelFittingResult` class with `AAMMultilevelFittingResult` and `ATMMultilevelFittingResult` being its subclasses.


It is in the `PatchBasedAAMBuilder`. This change actually fixes the bug of hog being defined as an str instead of function. The default of `AAMBuilder` is still `igo`.