Removed redundant code
fixed some comments
Moved the url element logic to it's own class and updated the tests
Fixed some naming of the tests