some site improvments, refactor to use angularjs, add tests and loading button. issue #22