I have thought some about 4) and 5),
I haven't view the source and I still don't how do you implement it,
but I think white list maybe not so easy, because the list can be very large
I think it's more reasonable to implement this with sub account.
some agent company can offer a service for identity authentication service, like:
register account, rescue private key, freeze account, offer some information to government....
all these sub account have the same root account, both customer and the agent company owner the private key.
the asset creater only need to set which root account can be trust.
they don't need to save the customer's information, they don't need to make deal with government directly,
they don't need to handle the customer's identity service.
1) You can now specify a required transaction fee (payable in user issued asset) once per transaction that withdraws that asset type.
2) You can now have multi-sig issuers/control over an asset
3) You can now have child asset symbols like child accounts to facilitate trust in a common issuer of related assets.
4) Issuers can now optionally retain complete control over all balances in their asset. (Freeze accounts, etc) Needed for legal compliance.
5) Issuers can now optionally white list public keys that may own/trade the issued asset.
With these powers Gateways can comply with all regulations just like with Ripple. Companies can issue shares while remaining in full compliance with the law.