Make sure tests are built with same stdlib flag as used to configure swig
Work around clang bugs with symbol resolution
Workaround for clang 3.2 libc++ empty struct bug.

Certain tests have empty structs or classes.
This encounters a bug with clang: http://llvm.org/bugs/show_bug.cgi?id=16764
This is fixed in later versions of clang, but not the version
currently bundled with Mavericks and XCode 5
Fix issue on clang about implicit instantiation of undefined template

Generated code does not include <string>, which is referenced in templates.
Clang may be incorrectly or aggresively instantiating some template.

E.g.,
import_stl_b_wrap.cxx:3199:51: error: implicit instantiation of undefined template 'std::__1::basic_string<char, std::__1::char_traits<char>
Work around differences in clang libc++ std::vector<bool>::const_reference

clang++ using -stdlib=libc++ defines const_reference as a class,
to map boolean vectors onto a bit set.  Because swig does
not "see" the type as "const &" it generates incorrect code for this case,
generating a declaration like:

  const_reference result;

When const_reference is a typedef to 'bool' as is the case with stdlibc++
this works.  When this is actually a constant reference, this is clearly
invalid since it is not initialized.  For libc++, this is a class
which cannot be default constructed, resulting in an error.  The fix
is to explicitly define the various accessor extensions as having a
bool return type for this specialization.
Move setting required -stdlib argument into configure.ac
Allow csharp examples to run under mono
Change to only add -stdlib on OSX versions that have libc++
Use better test for clang
Add support for cdata library for Java
Merge branch 'clang_fixes' of github.com:marvingreenberg/swig into marvingreenberg-clang_fixes
Add <string> fragment

Removes <string> include specifically for clang
Cuts down on duplicate #include <string> in general