Update .gitignore to ignore executable files
Bring parser up to date with rust

- Update the parser to be generic, but require Reader, Buffer and Seek

  traits instead of relying on a single trait. Closes #4
- Remove managed boxes from parser.