bumped version
refactored code with some documentation