staged Smile Reader/Writer. lacks some types and unit tests