The main utility of memberships is to be able to interact with the blockchain without having to hold an asset as the membership contains an amount "auto-refilling gas".
One way to make transactions use the gas in the membership for fees is to wrap every call with an extrinsic that implements a feeless_if condition, but as we want users to use their membership gas for everything, to make the submission of an extrinsic simpler and not require a wrapping transaction we should look into adding a signed extension that checks at a lower level of the extrinsic lifetime how to use the gas of the membership.
The main utility of memberships is to be able to interact with the blockchain without having to hold an asset as the membership contains an amount "auto-refilling gas". One way to make transactions use the gas in the membership for fees is to wrap every call with an extrinsic that implements a feeless_if condition, but as we want users to use their membership gas for everything, to make the submission of an extrinsic simpler and not require a wrapping transaction we should look into adding a signed extension that checks at a lower level of the extrinsic lifetime how to use the gas of the membership.