Cosmetics

Get rid of some alignment that's too tight for the new functions
(and that was not consistent anyway), indent some module content,
and such futile things.
Add Hashtbl.{modify/modify_def/modify_opt}
Add Map/Splay.modify_opt

Note: SplayTree is not splayed on deletion, hopefully it's correct.
Fix typo in Map doc
Add IMap.modify/modify_rec/modify_opt

Note: I had to make public AvlTree.create for better performance when
modifying a singleton (which I believe is quite frequent)
Add List.modify/modify_def/modify_opt for association list

Obviously performance is less of an issue here.
Add Multi{P}Map.modify and friends

No tests since that's just wrappers around {P}Map
Add Hashtbl.{map,filter,filteri,filter_map}_inplace