Update Handlebars to the latest version

We might as well!
Use classes for behaviour, not a case statement

Subclass the bundle types to seperate out the logic for combining and
mini-fying the contents.  This also makes it relatively easy to combine
handlebars templates with javascript.  This means one less download,
also potentially better minification!
Loosen up dependencies
Version bump