Switch to Angular, closes #11