Better shell implementation

It's activated by running agora.py with no arguments