Refactored and added documentation
Bump the Version