Remove DeviceAdapter template from Generate classes.

The generate classes shouldn't be templated on the device adapter
since they never are executed anywhere and the scheduler should
handle any device specific code.
Merge branch 'reduce_num_template_args'