Emit metadata

- parser emits metadata event
- parser starts paused, resumes on next tick
  (to allow listeners to bind after stream is created)
- if given a virtual (vinyl) file, it returns the parser stream
  and converts string/buffer content to a stream
- tests use same parser