Make API modules global.

Renamed 'app' to 'engine' in the global table.
Rename 'snabbswitch' command to 'snabb'.

Short and sweet!

Adds a 'make install' target to install as /usr/local/bin/snabb.

snabbswitch/src/snabbswitch is created as a symlink for compatibility.
New hashbang-friendly (#!) command-line syntax.

The command-line syntax is now:

    snabb [options] <script> [args...]

where <script> is the path to a Lua script.

This is compatible with #! scripts. For example:

  #!/usr/bin/env snabb
  c = config.new()
  config.app(c, ...)
  config.link(a, ...)
  ...
  engine.main(c)
snabb: Added -P <pathspec> argument.

This is used to set the Lua package.path variable i.e. to specify
paths on the filesystem where Lua code can be automatically found by
require().

For example, to pick up modules in /usr/lib/snabb/ you would use:

  snabb -P '/usr/lib/snabb/?.lua' ...

The default value for package.path is now '' so that no modules are
picked up by accident.
Removed old unused files from scripts/
loadgen: Now an executable Unix script.

(Used to be a Lua module compiled into snabbswitch.)
Removed obsolete designs/ subdirectories.
loadgen/README: Updated for new './loadgen' script syntax.
.gitignore: updated for src/snabb
Merged shebang support: scripts with #!/usr/bin/env snabb
test framework
documentation
packet manipulation
fix indentation
packet manipulation
test framework
document test framework
	move selftest()s to testfiles
new style testfile
part of merging