[x] Updates public property which tracks total collateral tokens
[x] Updates to mature method
[x] Records the exchange rate between the collateral token and the treasury token using a generic Oracle interface
[x] Records the amount of collateral tokens which will be distributed during redemptions to make up for the treasury shortfall. This can be 0%, if the treasury has a surplus, or it could be 100%, if not even all the collateral tokens are enough to make up the shortfall.
[x] Records the “collateral redemption rate” based on the collateral tokens that will be distributed to make up for the shortfall.
[x] Updates to the redeem method
[x] Transfers collateral tokens to the caller based on the “collateral
redemption rate”
mature
methodredeem
method