refactored many responsabilities into new classes
null pointer fixed
refactored class. time to do some unit tests ...
some test written, some bugs discovered.
new test file and more ignored files