Overhauled logging.

* Warnings are now colorized and display the source line number.
* New logging API in base package. Use it instead of the "log" package.
* "-log=" command line flag enables keyword-based logging. Value is a
  comma-separated sequence of keywords to enable. Current ones include
  "REST", "REST+", "CRUD". ("REST" is enabled by default.) The
  special keyword "bw" instead disables ANSI color in the log output.
* Not a log of keyword-based log messages are implemented yet. We can
  add more as time goes on.