Proxy: Raise AttributeError in __getattr__

We were incorrectly raising KeyError if the requested attribute was not
found. However, in some cases there would still be an AttributeError
raised but for an entirely different reason - because link_map was None,
due to it not being initialised properly if there were no links in the
HAL resource.
Proxy: Tests for embedded resources

In order to allow us to create Proxy objects for embedded objects
without needing to do a HTTP fetch, the __init__ method now takes a
fetch parameter, which defaults to True, but is set to False in the case
of embedded object for which we have the data.

The embedding tests so far only works with the Proxy class, not the old
Navigator class, due to the latter complaining about lack of
"navigables", which I believe depend on the appropriate _links objects
being present in the document, which some of these tests exclude.