Refactord into a more supportable form
Version Bump