A component / entitiy based angularjs text rpg