Futuristic (experimental) widget abstraction for AngularJS