add initial C API code

This adds an initial implementation of the C API defined
in gcc-interface.h.  This still has a number of holes,
see the FIXME comments.
add c_api_finish_record_or_union to the vtable

An earlier patch neglected to add c_api_finish_record_or_union to the
vtable.
add API versioning

This updates the exports to track the API versioning approach.