add new entities and refactor; specs RED