GraphiteWriter follows the pattern introduced in BaseOutputWriter

Most interesting class in this commit is GraphiteWriter, the rest is just there to follow the changes.