[Testing] item->item_vars["lets_you_save"] = "arbritrary stringified data";

...without changing the save format, or adding any code to item::load/save

This uses item tags: on load, any tag starting with ascii 001 (^A) is instead
used to populate std::map<std::string, std::string> item_vars, as so:
"^AvariableName=string" => item.item_vars["variableName"] = "string";
Spaces, line feeds, and tabs are escaped as ^A + hex: ^A0D, ^A20, etc.

As a demonstration, a new menu option for the pocket knife is added: 'Carve on item', which is basically per-item graffiti. (This will be moved to markers later, if useful)