Add unit tests for InternalFunction

As requested, a few unit tests.

The tests that require c++11 functionality have been split into separate modules; they will only execute when PKG_CXXFLAGS contains -std=c++1[1-9]. AFAIK, all current compilers require this flag to enable c++11 functionality, so for now that's a good approximation. It's better to skip this test than to have it fail due to compiler shortcomings.

I've hidden both behind the runAllTests-flag, because I don't know the requirements for default tests. Feel free to remove them if they aren't needed.

I've tested
`PKG_CXXFLAGS="-std=c++11" r ./runTests.R --output=/tmp --allTests`
Rcpp unit testing - 444 test functions, 0 errors, 0 failures

`PKG_CXXFLAGS="" r ./runTests.R --output=/tmp --allTests`
Rcpp unit testing - 442 test functions, 0 errors, 0 failures

(btw, the --local switch in runTests.R is a lie. While it will take R scripts from the local directory, cpp sources are still taken from the installed package directory. Makes for some fun debugging if you don't know.)
This may a little fragile [in light of `c++1y`](https://gcc.gnu.org/projects/cxx1y.html).

Should we maybe add a test for `RCPP_USE_STD_FUNCTION` to `Rcpp:::capabilities()`, or at least revive the test for C++11?  Other thoughts?