New API

implement if template with new API
remove unnecessary tests
Check type in boolean templates
Fix testData for if template
Reimplement AssertTemplate
Move key and presentable name initialization to constructor
Reimplement else template
rename
final modifier
Merge remote-tracking branch 'origin/livetemplate' into livetemplate

Conflicts:
	src/org/jetbrains/postfixCompletion/templates/PostfixTemplate.java
In order to avoid deadlock disable prefix calculation by postfixLiveTemplate in LiveTemplateCompletionContributor
Reimplement while template
Fold tests + remove throws Exception
rewrite cast
Make key-parameter optional
cleanup?
Add extra test for cast template
fix void cast test
Introduce descriprtion and example for new templates
cleanup