pipeline_lua: create a sandbox

See http://lua-users.org/wiki/SandBoxes. The goal is to hide builtin functions
like os.exit from uploaded code.

There are a few holes remaining:

1. FFI
2. Raw _context pointer
3. register_table passes raw pointers
4. Need time/memory limits on scripts
5. Bytecode may be unsafe
6. field_names may need to be copied
pipeline_lua: support multiple builtin Lua files
pipeline_lua: expose simple actions to sandbox

The non-scalar set-fields of MACs and IPv6 addresses are going to be more
complicated.
pipeline_lua: add a log function
action: add scalar version of MAC rewrites for Lua

It's easier to pass plain integers through the Lua FFI.
pipeline_lua: use scalar MAC rewrite actions
pipeline_lua: safely expose packet fields to uploaded code
pipeline_lua: add licenses to embedded Lua code