Add better error checking against phone numbers

This requires the use of the ported Google Phone Numbers library
`pip install phonenumbers`
More Info: https://github.com/daviddrysdale/python-phonenumbers

Additionally, this adds `validation_method` to the rules list which
is a function call that contains additional logic for the rule.
This function should return True/False and if True, the rule is added
to the result list as currently occurs.