Refactored
Refactored: 1) applyed clojure dev convention 2) deleted obsolete functions 3)added several tests