Validate dataURIs for remote resources

fixes #5 

According to https://github.com/mozilla/openbadges/wiki/Assertions#badgeassertion we should be supporting data URIs for image resources. While the synchronous validation step took this into account (`isAbsoluteUrlOrDataURI`), the remote resource validation step did not and would assume anything coming into those fields was a remote resource.

I've fixed it so that the remote resource gathering library tests the URL first to check if it's a data URI and processes it differently if so. Note that while dataURI parsing can happen synchronously, I've wrapped the logic in a `process.nextTick` to ensure that the call always happens async