more appropriate error message status codes (.NET)

throw a 400 (and more specific XML parsing error)
throw a 400 for no url as well.