AngularJS Table directive that draws a table of data with different features