support [] property accessor
add charset
add specs
edit compatibility