Allow to run and build programs from unsaved (untitled) file.

TM_DIRECTORY is not set when file is not saved. In such the case we'll
run all commands against the absolute filepath to the temporary file.
Run all non-run commands against current directory.

This doesn't assume any directory structure and allows for building
packages outside of the GOPATH.
Add Compile command, trigger on Cmd-B

Compile command allows to run tools like lint or vet.
Go build is always run at the end, but doesn't produce executable.