Define truth to be any value not null, undefined or length greater than 1

I find it very irritating when I pass in a value of 0 I have to cast it to a string before rendering. If the definition of truth was any value not null or undefined, templates would render zero. 

I also think templates should consider arrays of zero length to be false. This just makes way more sense with the {for} {else} syntax.