pass container el to constructor, internalise get/set fragment, provide detach/attach functions so that container may be reused