Refactoring of the whole application design.
Widespread use of Spring.

Attention! Commit contains errors.