set up some basic functionality