added a main entry point - to be used by lein run