Allow generated kernels to take non-vector arguments

The bug described in #152 prohibited kernels generated from symbolic
expressions to take non-vector arguments.