Change way keys/options are defined and update readme

 * Means each provider encapsulates its own requirements