Better handling of position option

For named parameters the position must be validated to both be an
integer and to be a valid index in an array. In other words, non-
integer values for the position parameter should raise an exception
and values for position which would result in an index less than
zero should also raise an exception.
Cleaning up test methods with setup

Moving instantiation of the Clerk::Template to an instance variable
created in the setup method.