Move application entry point to Callable interface, refactoring, add Report service, fix files layout.