Move PS1-specific code into PS1 defines

So we have a bit more flexibility with what we do with our colours, move
the PS1-specific escapes (`\[` and `\e` and the like) into the PS1
definition; we want them out of the variable definitions since PS1
evaluation does variable expansion after it expands any escapes.
Make hostname colour redefinable within a shell

Evaluate the value of `$hostname_colour` every time PS1 is displayed, so
it can be changed on the fly if desired.
Make all PS1 prompt colours customizable
Add missing `;;` to final shell switch
Merge branch 'bug/missing-endcase' into recolour

Conflicts:
	bashrc
Recolour tastycake PS1 prompt

Make the difference between tastycake and other systems more obvious.
Add Hendrix to custom PS1 colours
Merge branch 'bash'