Hm, no. It's not good to invoke `start` in `NewDecoder` – `start` consumes data from reader, constructor should not do this.