adding support for US military addresses

Added better support for US military addresses and a weighted address
generator.
The address function now has the weighted element attached to it looking for a list in the format [(element, weight)] and when it encounters a list not in that format it throws an error. This is to make the tests pass and to make sure all the elements return correctly.