add get by id, put by id, tests, refs #25

minor cleanup + some unification of writing features, too