nolearn: disable learning by default

Related to #276.
nolearn: fix tree-2-2.kat example

From #279.
nolocal: lift profiling pattern into a function
nolearn: Use Cmdliner for argument parsing

The katnetic executable now uses the Cmdliner library to parse
command-line arguments. In the process of transitioning to this library,
a few things have been added. First, there is no longer a need to
specify "local" when running or dumping a static policy. Second,
learning is disabled by default when running, but can be re-enabled
using the --learn flag. This will cause the static policy to run in
parallel composition with learning. Third and finally, the various dump
modes have been changed to flags:

  --all : dumps all information (default)
  --flowtables : dumps per-switch flowtables only
  --policies : dumps per-switch policies only
  --stats : dump pers-switch compiler stats only

For more details, use --help flag for each command (run, dump, etc.).

Closes #276.
Merge pull request #281 from frenetic-lang/nolearn

Rework command-line arguments for katnetic