python: Wrap syscall decoding and emulation

This attempts to be Pythonic rather than exposing the C API directly.
Use it like this:

import os
import seccomp
import errno

f = seccomp.SyscallFilter(seccomp.ALLOW)
f.add_rule(seccomp.TRAP, 'setgid')
f.add_rule(seccomp.TRAP, 'getgid')
f.load()

def handler(t):
    return -errno.ENOTTY
seccomp.set_trap_handler(handler)
try:
    os.setgid(99999)
except Exception, e:
    print 'setgid said %s' % e

print ''

seccomp.set_trap_handler(seccomp.trace_trapped_syscall)
def bad():
    print os.getgid()
bad()

This program will print:

setgid said [Errno 25] Inappropriate ioctl for device

Dying due to seccomp-blocked syscall
Traceback (most recent call last):
  File "test.py", line 23, in <module>
    bad()
  File "test.py", line 22, in bad
    print os.getgid()
getgid(0x0, 0x0, 0x4, 0x0, 0x0, 0x3CAEF13240)

(Note: those arguments are bogus.  A considerably fancier future version
 could know the syscall signatures and the mapping from raw to logical
 arguments to allow a nicer message like "... getgid()".  In the mean time,
 this makes debugging much easier.)

Signed-off-by: Andy Lutomirski <luto@amacapital.net>