percent range now works with values less than 1

Summary:
- fix the percent range to handle non integer values
- added tests to ensure the hashing works

Test Plan: pass

Reviewers: jeff, kalail

Reviewed By: jeff, kalail

Differential Revision: http://phabricator.local.disqus.net/D11542