locate: use context to locate type or value appropriatly Handles the last point of #308
locate: use context to locate type or value appropriatly
Handles the last point of #308

Also, minor code cleanup.

dra27/merlin,fxfactorial/merlin,haselwarter/merlin,ocaml/merlin,neojski/merlin,fxfactorial/merlin,rgrinberg/merlin,the-lambda-church/merlin,rgrinberg/merlin,chambart/merlin,rgrinberg/merlin,dra27/merlin,haselwarter/merlin,chambart/merlin,fxfactorial/merlin,the-lambda-church/merlin,neojski/merlin,chambart/merlin,fxfactorial/merlin,chambart/merlin,the-lambda-church/merlin,ocaml/merlin,chriskonstad/merlin,haselwarter/merlin,dra27/merlin,ocaml/merlin,neojski/merlin,haselwarter/merlin,ocaml/merlin,rgrinberg/merlin,neojski/merlin,dra27/merlin,chriskonstad/merlin