OK this requires more thought than I initially believed:
Essentially you want to control which coins are allowed to do any one of the operations move, deposit, withdraw. This requires big changes. If it is to be done, it has to be done for all coins, and in a way that will not require more changes two weeks down the road.
Can you tell me more about your use case? What are you using custom coins for? Is it some type of store credit that does not make sense to deposit/withdraw?