Float funcitonality

This depends on HenryII pull request for python2 compatibility (I added some changes to this). 

Following features were added: 

1. Options class that holds options (both positional ones and key-value ones)
2. Dimension class (for representing latex dimensions) 
3. Latex classes that render themselves via jinja2 templates
4. Supprt for floats, subfloats and graphics.