Be a little more explicit as to why we can't display a variable under watch.
Fix include paths when debugging a bytecode not at project root.
Do not allow an empty string to mean extra make options.

Make would complain that the target does not exist.
Fix empty string handling in makefile project properties.

All the options from the Makefile properties have an empty string meaning "nothing to add". However, current handling does not treat that specially, leading to malformed Make commands.
Make all the ocamldebug output parsing to be whitespace insensitive.

This should restore compatibility with older OCaml versions.
Make the debugging start/end messages whitespace insensitive too.
OCaml 4.01 onwards uses "program end".
Restore the message that displays when the debuggee starts.
Ensure the validity of the proposed stack location.

We want it to be ModuleName._ at the worst case; some times we are unable to resolve the function name and we should use _.
This also displays the location of the last stack frame anyway (falling back, if necessary)
Make all the regex patterns for the debugger static, so we do not keep compiling them.
Also allow switching stack frames when we are able to parse the debugger output and the call stack window displays user-friendly stack frames.