a bit refactoring
renamings
add tests

draft of collections and condition support
TODO: tests on dependency resolver and code preparer, after that we can go with idea plugin
remove temp files