Validate URLs in calendar subscriptions

Invalid calendar subscriptions could be set up without any issues. So
when the user subscribed to me@gmail.com it would look like it had worked.
When the server would try to pull the external calendar it would hit a
`MalformedURLException`.

E.g. http://sentry.oucs.ox.ac.uk/weblearn/weblearn-live/group/130113/