Refactor code
Introduce tabbed UI