First step to smarter token values
Support functions as token values

You can now use a function as a value for  token. The Template object
will call the function to get the value right before it substitutes the
value for its token.
Template processing now line by line

In preparation for handle tokens which are arrays, it was necessary to
change the processing of the template to be line by line rather than
processing the entire file for each token.
Refactored in prep for array tokens

The code has been refactored in preparation for implementing token
arrays.
- New abstract Token class
- New ValueToken class
- New FunctionToken class
- New Tokens container class
- Updated Template to use the new classes.
- Updated testTemplate to use the new classes.
- New testTokens class (incomplete - doesn’t test everything)
Moved line processing down into the tokens.

- added process method to Token, ValueToken and FunctionToken.
- added process_token to Tokens.
- added process_token to Template; removed get_token_value from
Template.
- Changed Template to use process_token instead of get_token_value.
- deleted testToken.pl