basic setup and cleanup