Update README
Add gitignore
Split quick_exit into ok and not_ok versions

This allows a test to quit and determine whether the quit should
count as a 'pass' or a 'fail'.
For example:
    chflags does not exist in Linux. For chflags tests, quick_exit_ok
        should be used, because this does not show a deficiency in the
        filesystem, but rather the kernel.
    ACLs are unimplemented on some filesystems. For these tests,
        quick_exit_not_ok ought to be used because the lack of ACLs
        represent a lack of functionality at the filesystem level.

Also, a string may be passed to either of these functions which will
be echoed (and may be seen with 'prove -v'). This can be used to
give an explanation for the quick_exit_* invocation.
README: Emphasize running tests as root

Now it's a bit harder to miss this important step.
Don't rely on data after argv being null

On my Linux system this is where envp is stored, causing environment
variables to be treated as additional arguments in system call.
Support optional number args
Preliminary get/set xattr framework

setfattr and getfattr only return 0 and don't actually do anything
yet, but it's all callabale from expect().
getxattr