Closes #6, Closes #18 This PR separates out 3 different classes: a distinct Hooks handling class, a MediaHandler class for models, and a MediaTransform class that handles all the actual model rendering. Reviewed-on: #20