WIP - better support for C headers, but still have a lot of work to do.