gocode: improve error handling/reporting
gocode: improve error handling/reporting

- use log.Fatal instead of panic
- fail earlier when given an unsupported subcommand
- make "gocode close" fail with error if the server process is not
  running (instead of starting the server and instructing it to finish)

mdempsky/gocode,mdempsky/gocode,mdempsky/gocode