added basic open/create functionality