Generic Dashboard/Widgets functionality with AngularJS (directive)