Added a URL field

Will ensure entered values always begins with a protocol (`[a-z]+://`), and unless `require_valid` is set to `false` only saves valid URLs.