fix bug with implicetely defined __contains__ in FieldsDict

bux fixed by making BackendNotFoundError and similar exceptions also
subclass KeyError
Add API tests
Added supported providers view
Minor fix in associate_key (don't connect unless host is given)
Changed the way KeyError's in FieldsDict are translated to mist exceptions