Give all matching names equal odds
Replace vector copying with lookup
Make loops the same
Use reference to address vector
Customisable bashing sound

Code only.
Sounds tweak 1
Sounds tweak 2
Require door motor to remotely open doors
Much nicer door selector interface
Add drive-by-wire controls as separate item and part
Add drive-by-wire to bubble car and solar car
Remove unused member
Allow eating from worn containers / items.

Changes are:
1. get selected item via player::i_at, using only the item position, which includes worn items.
2. check the content of that item or the item itself for being food instead of duplicating that for weapon and inventory item.
3. get the it_comest pointer from the selected item as final step.
4. display message for empty worn container.
5. drop empty containers from main inventory (not worn, not wielded) if the option says so.
Fixes optical cloak's description.

Since you no longer need to activate the UPS itself.
Implemented the item slot for books:

Convert functions in player to use const itype references instead of non-const pointers.
Apply astyle to Item_factory::set_use_methods_from_json
Load use functions directly into a vector,

instead of loading it into an itype pointer (in the use_methods array of the itype that the pointer points to).
This allows the function to be used without an itype pointer, just with a vector of iuse_functions.

Also move the check for the existence of the requested member into the function itself to avoid writing the member name twice.

And use the json objects for error reporting instead of debugmsg.

And fix a possible bug: use the member parameter instead of the fixed string "use_action".
Give books their own use functions vector.

This allows items that are tools and books to have different use functions, one (directly inside the itype) for the tool part and one in the islot_book for the effects that happen after reading the book.
Because reading only triggers the effects in the book specific use function, the martial arts style book need to set up book data to specifically write those iuse functions.
Make the macguffin item a proper book item.

Use the books use_function to call the macguffin function.
Move the unread chapters number into an entry in item::item_vars.

Add some chapter functions to the item class. The number of unread chapters is stored with the id of the player character, so different player characters on the same world can read the same book independently.