major restructure using yeoman-angular-gen as a base