Added the domain layer - git is having trouble with it.