better public/private pattern for GrooveFile. see #37
queue: better public/private pattern and no typedefs

See #37 and #36
encoder: better public/private pattern

also get rid of typedef on GrooveFile and GrooveEncoder

see #37 and #36
buffer: better public/private pattern and get rid of typedef

see #37 and #36