Validate dataURIs for remote resources

fixes #5 

According to [the spec](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](http://blog.izs.me/post/59142742143/designing-apis-for-asynchrony).