improve tagging of arguments
Theano doesn't recognize () as an argument for reshape
use a shared vector, otherwise 'escape' might fail
return an array, not an iterator