First pass w/ callbacks

First pass at handling autowrite duties via callbacks