Controller - View approach

Closes #2 
Closes #10
Use a semantic class name, like `loading`.