Handling of EmailReference messages

This pull request handles the EmailReference pointer message (related to #4) as discussed in #18.

It has been tested with:
* [Mailtrap.io](https://mailtrap.io/)<sup>*</sup> for attachments of small size ~1MB
* the technique I previously described [here](https://github.com/GreanTech/Qaiain/pull/18/files#r14179272) for attachments of size ~20MB

-----

<sup>*</sup>Mailtrap.io rocks!, by the way. :) 
The `EmailMessage` Discriminated Union represents the content of the parsed XML.

A hypothetical `OrphanedEmailReference` doesn't represents the content of a parsed XML. It looks more like a storage related concept to me.

AFAICT the `parse` function can't return an `OrphanedEmailReference` unless we attempt to download the blob's contents.

A better place would probably be the new `handle` function. Its signature though is:
```
string -> unit
```

In other words I am not sure
* what is the best place to capture and return an `OrphanedEmailReference`
* how to get a decent code coverage around it