Detect utf8 files correctly


94ae1ae : C0(192) and C1(193) must never appear in initial bytes of 2 byte code.
581af6b : Initial bytes of 3 byte code are E0-EF(224-239). 
f9a2563 : Non-initial bytes of multibyte code are 80-BF(128-191).

see: [RFC3629 UTF-8, a transformation format of ISO 10646](http://tools.ietf.org/html/rfc3629)