do clean up not in dealloc, but in a cleanup method
add test when user click the cancel button in the file open panel
add tests for workspace controller