title: pybind11 return numpy array of objects
body: <p>Using pybind11 C++ API and python3, how can we properly create a numpy array of objects (i.e. unicode strings) in the C++ implementation and return it back to python? What is the exact memory layout of the underlying data array passed into pybind11::array()? How exactly do we need to manage memory, i.e. delete/free?</p>
  
  <p>Note that this is necessary because we want to use that array of strings, in conjunction with other POD arrays, in pandas DataFrame creation.</p>