Add animations tab to emperor

This is still a work in progress and is not ready to get merged, though it outlines the current direction this would take.

I'll mainly outline what's currently possible and the things that are currently possible:

- Select a category in the mapping file by which you want to group your samples i. e. create the trajectory.
- Select a category in the mapping file by which you want to sort the samples in each of the groups, this must be a numeric category a metadata mapping file column where all values are numeric.
- Once these two categories are selected click the play button and see a line begin drawing between the samples in the order that was assigned by the previous two categories.
- Rotate, change colors, zoom in, zoom out, etc the plot as the animation is running (I could not believe it when I saw this :beers: ).

The things that are not possible right now:

- Select the color of the trajectories, all trajectories are being drawn in white by default right now.
- Pause.
- Speed up or speed down.

----

The backbone for this pull request are two objects `Trajectory` and `AnimationDirector`. These objects take care of the data wrangling within the HTML code, I would appreciate any input on the implementation of these (I still have to update the docs on these, I've used Google's coding guidelines for this).