http://stackoverflow.com/questions/14849857/detect-unsaved-data-using-angularjs
http://www.ng-vinod.com/2014/07/angularjs-pristine-dirty-valid-invalid.html
http://stackoverflow.com/questions/15423927/angularjs-automatically-detect-change-in-model
http://stackoverflow.com/questions/34058539/angularjs-how-to-detect-change-in-scope-variable-object