Templates

Added template functionality. This branches off of the error_messages_shouldnt_be_static branch, so only the last commit is relevant.