created some classes similar to client classes (abstraction inclusive :)
)