use state pattern for ogg parser