Update tests for new do output
Ensure grouped_df returns tbl_df if no groups
Preserve grouping in compute, collect etc
Implement semi-joins
Tweaks to printing