Correct me if I'm wrong but couldn't this simply be done in the wallet side of things? As it's mostly just moving of decimal places anyway.
You are right. As we all know, each bitcoin is divided to 100 million units and there are 8 decimal places for bitcoin. But that's not how the protocol works. In the bitcoin protocol, there are no decimal places and we always deal with satoshis. You can send 0.001 BTC and your wallet or block explorers can show that as 0.001 BTC, 1 milliBTC or 1000 microBTC