Disable enqueueNativeKernelLaunch on 32bit windows

refs #24

This looks like a bug in OpenCL standard: ::clEnqueueNativeKernelLaunch accepts
user function with cdecl calling convention, and cl::enqueueNativeKernelLaunch
accepts stdcall function.

Disabling the function in our cl.hpp for now.
Reimplement commit ce0c77b472d

The ce0c77b472d was broken for contexts containing mixed CPU/GPU devices.
Add generate_platform_defines into the main headers
Add barrier for user stencils running on the CPU
Merge branch 'master' into platform-defines

Conflicts:
	vexcl/multivector.hpp