BUG: add swig filetype headers

The swig files use C++ features so they should be declared as C++.
Some files even lie and declare themselves as C which causes a build
failure if one re-swigs with setup.py.
Merge pull request #497 from juliantaylor/swig-filetypes

BLD: sparse: add swig filetype headers to sparsetools

setup.py may use these when generating the files
(but this is not enabled in the current build setup)