correct order of check/eval in type checker (closes #44)