Test case and fix for empty frames using `frame []`

This adds a test checking that it is possible to create an empty frame
and adds a simple fix for this (via @adamklein). I also added a test
that fixes the behaviour when a new column is added to an empty frame -
when that happens, the frame's row keys are fixed to the row keys of the
first column (and later added columns use left join).