All test passed + Main app

Todo: javadocs && optimising