fix the database generator and Number#valid?

closes #1

- [x] fix database_generator to include all possible valid formats
- [x] fix database_generator to exclude some invalid formats from the test examples
- [x] fix Number#valid? to check if the number matched both national and possible pattern. Also, if it matched one of the phone type patterns
- [x] add a spec to check all test examples are valid