javascript-backed structures and destructuring
added extensible reader