add status check functionality and some directory structure refactoring