Adding support for multi character placeholders

Fixes #120
Fixes #237
Closes #56
Closes #149
Closes #252