feat(ng-csv) Allow the ng-csv value to return a promise

Wraps the $scope.data() call in the buildCSV function so that we could optianally return an $http promise from the call with the data.
Also this adds/removes a class so the button could be styled for class loading. This defaults to 'ng-csv-loading' or can be modified via the ngCsvLoadingClass attribute.