Add lots of docs, mostly best practices.

Start out on the visualisation docs.

Expand overview, remove federation as a feature we don't have that yet.

Switch example variable to follow naming scheme.
s/failure to the user/user-visible failure/