added recursive_rmdir()