1) Renamed userAgent and Subdomain (added middleware)
2) Module loader now recurses directories
3) New controller & api format
4) Api as its own top-level object
5) User Roles are now configurable
6) Api responses go through ApiResponseHandler