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.


Well, even if we had `sparse_hog` there, we would still extract a `patch_shape * 36` vector because we first compute features and then we extract patches. So if we want a faster patch-based AAM, then we can put `igo`, but I'm not sure how good it performs. Is `igo` what you have in mind?