Backfill required methods

The first commit is the same as #136 The second is much simpler after #144