Add configurable viewer and page templates
Merge pull request #145 from box/configurable-templates

Add configurable viewer and page templates
(WIP) remove jquery in all components and add dom utility

NOTE: jquery is still being used throughout the codebase for promises,
as well as dom things in some utilities. Also, the dom utility is
simply acting as an abstraction to jquery until the functionality is
rewritten.
(WIP) fixing tests to support the dom util
(WIP) fixed all main library tests (some stuff is still broken in phantomjs)
(WIP) abstracted all jquery deferred/promise logic into a promise utility, removed jquery from all test files
(WIP) removed jquery from subpx util