I find that it is sometimes inevitable that you will have conflicting key combinations, so I added an empty i3 mode called "pause" which prevents i3 from reading the key combinations until you press Escape.
I'm thinking I can have a key combination load a config file, which will include loading the command mode key bindings and some visual indication of entering a command mode; another key combination unloads them and returns to an "insert" mode.
mode "pause" {
bindsym Escape mode "default"
}
bindsym $mod+p mode "pause"
That should show a 'pause' indicator in the i3 bar when you press $mod+p, and unpause when you press escape