locate: clean up file names manipulations
locate: clean up file names manipulations

- put them all in the same place
- simplify the handling of source file suffixes
- support jumping to .mll files

ocaml/merlin,rgrinberg/merlin,dra27/merlin,dra27/merlin,dra27/merlin,the-lambda-church/merlin,the-lambda-church/merlin,ocaml/merlin,rgrinberg/merlin,ocaml/merlin,ocaml/merlin,rgrinberg/merlin,rgrinberg/merlin,the-lambda-church/merlin,dra27/merlin