Initial implementation of string templates.

This will eventually be used by PaginatorHelper and later other helpers.
Having a separate object will allow easy re-use of logic in core and
application helpers.
Add ability to load template files.

Loading PHP files with templates will allow developers to easily
customize the HTML templates helpers use.
Add file headers.
Start integrating StringTemplate with PaginatorHelper.

Add templates() method and constructor use.
Move next() and prev() to use templates.

Use the new string templates inside next() and prev(). This greatly
simplifies the internals and removes a pile of internal complexity and
optionitis.
Refactor existing failing tests.

Split tests up and add more coverage to new next/prev methods.
Fix coding standards and missing doc blocks.
Fix assertion methods.
Only allow false when removing disabled links.

Only having one value that disables the links is more explicit and
allows '' to be created as well.
Merge pull request #1667 from markstory/3.0-paginator

3.0 - Paginator templates part 1