add specs around processor and general refactoring