Making lazy templates implementation more elegant

Instead of define `fn.solve`, now it's necessary to define a method
`toString` int the template class and a function property called
`lazySource`.
Documentation included.
partial tests cleanup & lint cleanup
Merge remote-tracking branch 'upstream/master'

Conflicts:
	lib/mincer/engines/eco_engine.js
	test/eco.js
	test/ejs.js
	test/template.js