Is there a program to browse through directories in a tree like structure in the linux terminal?

Example:

Suppose I was at /home/username/mysite and typed command_I_am_looking_for then I would get: (similar behavior as the tree program in Linux)

mysite
|-- manage.py
|-- mysite
|-- polls
|-- templates

Then there should be a selection highlighter (say a different color of the currently highlighted folder). Suppose that this selection highlighter was standing on the polls directory. After pushing <enter> I would get this:

It should be possible to just keep on going further in the directories, only unfolding them when selected and pushing <enter>. If I pushed a certain key, say s then I would select that directory and change my current directory path into that path.