Don't call format() to build attributes.

This is just waste. I've yet to see any real reason to allow attribute
formatting to be templatable. Cutting this out saves numerous calls to
format() which can pile up and be expensive.
Add persistent caching to StringTemplate.

This in theory will remove the overhead around compiling templates on
each request.
Remove persistent cache.

It didn't actually increase performance at all. In some cases it would
slow things down as the filesystem was used.
Remove numerous calls to in_array().

Replacing in_array() with isset() saves a number of calls which add up
over time.
Comparison expressions need to traverse over their own _value property

Comparisons where not traversing their _value property which was causing issues when comparing another expression.
Only add 'day' once with SqlServer DATEDIFF

If a single instance of a DATEDIFF Expression was used more than once, 'day' would be added multiple times (Once be usage). This threw an SQLServer error.
Merge pull request #4200 from dakota/3.0-comparison-traverse

Comparison expressions need to traverse over their own _value property
Fix failing tests.

PHPUnit removed assertTag(). Semver is hard apparently.
Merge pull request #4201 from dakota/3.0-nested-sql-server-datediff

Only add 'day' once with SqlServer DATEDIFF
Unify assert method argument order.
Fixing more sprintf problems and always showing the port in Server shell start
Update tests for new assert order.
Rename remaining tests
Default to en_US

This fixes a few tests that were failing as my default locale is not
en_US.
Keep the former methods around.
Fix corrupted global state.

On my non en_US machine tests following this would fail as my default
locale of en_CA was picked up.
Add templates option to numbers()

Much like the templates options in FormHelper, this option lets you set
the templates for one numbers() call. Or have numbers() use different
templates than the rest of your pagination buttons.

Refs #4171
Fix undefined variable error.
Merge pull request #4187 from markstory/string-template-cache

Optimize StringTemplate a bit
Make PHPCS happy