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.
Use appropriate class in getattr call
Merge pull request #12 from ProgramFOX/master

Fixed typo; replaced an o with a zero
Added space after comma when joining reasons

Added space after comma when joining reasons, see http://chat.stackexchange.com/transcript/message/17496361#17496361
Only repost if title changed or if the same question has been posted more than 15 messages ago
Trim title before posting

Trim title before posting; if the title has a space at the end, it is not posted as a link: http://chat.stackexchange.com/transcript/message/17536680#17536680
fix indentation
Update ws.py
Fix typo in setup.sh
Merge pull request #13 from NerdYouDontKnow/patch-1

Fix typo in setup.sh
Changed BeautifulSoup version from 3 to 4

Changed BeautifulSoup version from 3 to 4 because using version 3 results in an error: http://chat.meta.stackexchange.com/transcript/message/2381831#2381831
Update findspam.py

Catch acai burn product spam.
Merge pull request #14 from Vincentyification/patch-1

Update findspam.py
Unescaped HTML Entities
Update findspam.py

Catch spammers bypassing the phone number filter with underscores.
![x](http://i.stack.imgur.com/VQHIT.png)
Here is a [regex demo](http://regex101.com/r/jX3zY7/2),
Merge pull request #15 from Vincentyification/patch-2

Update findspam.py
First attempt at creating a blocking feature
Fixed blocking mechanism
Merge pull request #20 from Annonomus-Penguin/blocking

Fixed blocking mechanism
Custom times + make work