-------- Tricks --------
If you want to dump BCH but don't want to bother with the BCH node/don't trust their code, you can get around it with this trick:
1) You know all your prefork coins are also available on the BCH chain, therefor you only need blockchain data up to the fork point to move these coins.
2) You have all this data already in the form of the Bitcoin blockchain pre fork, so why not just use that?
3) You'll want to create a copy of your blockchain data then remove blkXXXXX.dat files up until the fork point . I don't know which file this is, something around 950~960, I'm sure someone will figure out the exact file. Note that if you did not move any coins post fork yet, you do not need to delete anything.
4) With this done, you want to sync a fresh DB against this blockchain folder. Do not run a node against it, just start ArmoryDB against this folder, then start ArmoryQt, it will pick up on that DB.
5) Once you're synced (it will show you as offline), you can create your transactions. You should pick utxos manually and keep track of them so as to not create conflicting transactions.
6) Once your tx is ready, make sure to create it as unsigned, even if your private keys are online. You will get a blob of text that you can feed back into the offline tx GUI. There you will get to sign the tx (make sure to pick the BCH miner), and you will get another blob of text. On the right side of that dialog, you will have a button that's called "Copy Raw Tx (Hex)". This is what you are after. This hex string is your signed tx.
7) With the signed tx, all you need now is some online service that will broadcast it to the BCH network for you, and voila.
I decided to go with your Tricks route. I'm using
https://pool.viabtc.com/tools/BCC/broadcast/ to broadcast. It works like a charm!
I just have one question now: In Armory, I saw an output address (what you called "utxos") with 10.0 BCH. The problem is that ShapeShift's maximum deposit was 8.0 BCH. So I sent 8.0 BCH to ShapeShift and 2.0 BCH back to the original output address ("utxo"). In other words, I used the original output address ("utxo") as the change address. So now I'm stuck with 2.0 BCH in this original address.
My question is this: How do I spend the remaining 2.0 BCH? Can I safely follow the same steps except with 2.0 BCH instead of 10.0 BCH - even though the Armory UI erroneously shows me that 10.0 BCH remain in there?
(In the above 10.0/8.0/2.0 BCH example, I obviously ignored transaction fees to keep the example simple.)