Prof pages

Ready for a review, some UI elements may be changed but the core seems good. 

Closes #142
Please make this function not an inner function. Move it to an appropriate utility file, or move it to be a private top-level function in this file. You can also write this on one line as:

```python
return (0.0 if b == 0.0 else float(a) / b)
```

Please mind the spaces around `/`.