Guard the use of push_macro & pop_macro from gcc < 4.5.0
Avoid modifying the definition of __host__ & __device__ if host_defines.h has already been #included.
Merge branch 'master' of github.com:jaredhoberock/bulk