Static HTML for the TODO List app.
1. Included AngularJS script in the static todo.html file.
2. Applied AngularJS to the static todo.html file.
Modified the static version of TODO list to a dynamic version by segregating the Model, View and Controller aspects of a MVC Pattern supported by AngularJS.As part of this introduced the AngularJS's built-in:

1. ng-controller attribute,
2. $scope service object,
3. data-binding or model binding concept,
4. double-curly braces syntax for evaluating expressions,
5. ng-repeat directive
Added a checkbox against each TODO item too demonstrate the "two-way model binding" offered by AngularJS where the model is used to generate elements and changes in the element cause corresponding changes in the model.
Added a behavior to the controller.Demonstrated the working of this behavior by dynamically updating the TODO list items count in the header when user marks one ore more items as complete.

As part of this introduced the AngularJS's ng-hide directive which will hide the element it is applied to - and its content elements - if the expression that is assigned as the attribute value evaluates to true (boolean).
Defined a behavior in the controller which depended on another behavior already present.Demonstrated the working of this behavior by applying label-warning and label-success CSS classes (of Twitter Bootstrap) dynamically by examining the incomplete TODO items count.

As part of this introduced the AngularJS's ng-class directive which applies the CSS class returned by the behavior.

Also demonstrated that an HTML element can use multiple AngularJS directives, each
of which relies on a different behavior to get the effect we require in an application.
Added a new behavior which allows the user to create new TODO items.This is to demonstrate behaviors and directives can be combined to respond to user interaction.

Along with introduced a new aspect of ng-model directive wherein when supplied the name of a property, for the directive to update, that is not part a model, the property gets dynamically created within the scope of the controller.

Also introduced the ng-click directive which sets up a handler that evaluates the expression when the "click" event is triggered.
Applied Filtering and Ordering to TODO items.With the filtering applied only those items are displayed which are incomplete and with the ordering applied the data is displayed sorted alphabetically on item's name.

Demonstrated applying this filtering and ordering when ng-repeat directive processes the model data.Demonstrated usage of following two filters:

1. filter - which when applied selects objects based on                             the criteria it is configured with

2. orderBy - which when applied sorts the data items
Improved the filtering applied by creating and using a custom filter which, unlike prior filter, doesn't hide for forever the completed items from TODO list.As part of this introduced the "filter" method defined by AngularJS module object which       returns a function that is used to filter a set of data objects.
Made the changes such that the TODO list items data is loaded as JSON data via an AJAX request, instead of loading it from an locally declared array.As a part of doing this introduced the "run" method defined by the AngularJS module object.The "run" method takes a function that is executed once AngularJS has performed its initial setup and is used for one-off tasks.Also introduced the $http service object which is being passed to the run method to tell AngularJS that we want to use the service object that provides support for making AJAX calls.
Merge branch 'master' of https://github.com/jignesh-gohel/ng-simple-todo