minor optimizations and refactoring
minor optimizations and refactoring

 - avoid allocating std::string and instead keep alive the node.Buffer
   containing the in-memory font data and use a pointer to its memory
 - use RAII principles in baton structs for setting up and destroying persistent handles

mapbox/node-fontnik,mattdesl/node-fontnik,mapbox/node-fontnik,mattdesl/node-fontnik,mattdesl/node-fontnik,mapbox/node-fontnik,mapbox/node-fontnik,mattdesl/node-fontnik