Make Configuration behaviour rather than a class.

Mix this into the session and allow it to be
configured directly.

This will avoid all of the copying when provider
is to be configured.