Abstractions of staff and staff items

- Staves and staff objects are drawn from (0, 0) and translated properly
to their actual position
- Staves are generated as notes are drawn when previous staff is full
- Song object created to handle the arrays of objects and the drawing of
the sheet music