update the gem with private methods
addressed most comments
some minor refactoring
remove default params
Merge pull request #1 from switchless/franc/check

update the gem with private methods