Improves argument name parsing in function pointers.

Previously, all function pointer types always had their arguments bound
as arg1, arg2, etc.  This change preserves the argument names, when they
are available.

*(Note that this is based on PR #132, so the diff is smaller than it appears.)*

parser.rs
- Uses the type cursor to visit children and gather argument names and
  types.

tests/function_pointer.rs
- Binds tests/headers/function_pointer.h and ensures that argument names
  are correctly bound.

tests/util.rs
- Provides some quick-and-dirty functions to allow the comparison of
  bindgen output with known-good output.