#2

business logic layer was added