extra: Rename json constructors into *::init
extra: json::Encoder should take a &mut io::Writer