Switch to new cudaLaunchKernel function and use variadic templates
Switch to new cudaLaunchKernel function and use variadic templates

The cuda::function class now uses variadic templates. This means there is
no limit of 16 function parameters anymore and no Boost dependency.

The cudaLaunch function is replace by the new cudaLaunchKernel function
which takes the grid and block size as an argument.
Therefore the cuda::configure function now moved into
cuda::function().configure, the values are stored as private members inside
cuda::function.
The cudaFuncAttributes are now fetched in the constructor and not to every
call of one of the functions which returns one of them.

halmd-org/cuda-wrapper