feat(api): Add API object

This introduce api object and removes any function bindings, replaced by functions from this api object.

It also removes all $scope.$on events support, replaced by their api equivalents.

Close #188
feat(options): Configure gantt using a plain old javascript object

Attributes can now defined in as a plain old javascript object, using the options attribute.