Better error handling, a snazzy auto loading directive and use controller as syntax