evil support for TypeScript evil implements; close #19