A declarative grid directive for AngularJS