Simplify base container by removing custom `set` method

Also, refactored load code so the semantics are similar for different objects