Fix keybinding names collisions

Keybindings in different contexts with identical action IDs were misbehaving.

An single ID -> name map was used to hold names for all actions across all
contexts. This caused incorrect names to appear in keybindings menus e.g.
"Remove bionics" would show up in the vehicle keybindings menu where one would
expect "Remove part".

This patch moves actions' names from the ID -> name map to the action_contexts
object.