Base class for client plugins

Subclasses must implement the _create method which is only called the
first time client() is called. A reference to the Clients object is
stored to allow client plugins to access other plugins.

auth_token and url_for are utility methods which can be called by
subclasses or elsewhere in heat.

_get_client_option is a private utility method for subclasses.

Change-Id: I5f890a3632b65a8cb534e0cf4dac858166bc168a
Merge "Base class for client plugins"