project refactored. move all source to one module. add context integration test