major project restructure. it is now an isolated angularjs module