some angular code added, not yet complete
merge conflicts