Setting packages order.
Added UML diagrams.
Started to add interfaces and some base classes.