More cosmetics for Hashtbl.mli

Mostly getting rid of some alignment that's too tight for the
new functions (and that was not consistent anyway)
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.
Cosmetics
Add Multi{P}Map.modify and friends

No tests since that's just wrappers around {P}Map