Compile less files from grunt rather than hand crafted script.
Updates all CSS files to manually @import whatever files they need.
Leverages less paths to allow themes to override files in common/ if they want.
move WebKitMutationObserver jshint from .jshintrc to Widget.js
various grunt fixes
fix typos in paths
Make sure startup() isn't called repeatedly.

Unfortunately this sets up a dependency where register.js needs to know that
Widget.js sets a this._started flag.   I don't currently see a way around that.