Refactor a bunch of enumerated constants to be 'enum class' types and not simply unqualified 'enum' types. Add seek, tell and flush to plum.File object. Replace file mode strings with numeric constants defined in the plum.open/plum.seek tables. Rename getPixel/setPixel/circle/solidRect/solidCircle to get/dot/ellipse/fillRect/fillEllipse in plum.Canvas.