ANormalForm & al.: Avoid mixing in unneeded traits
Ensure Evaluation does not import Pretty

Since Evaluation contains some error handling code, I had to redirect
this code to use a separate extension point (for which Pretty provides a
better implementation if needed).
Clarify how Bacchus imports functions.Pretty
Avoid unused imports of shapeless
Rename normalize* to aNormalize* in ANormalForm*

This deals with the lack of namespacing in the cake pattern (as usually
used).
Add common interface for ANormalForm* implementations
Cleanup comments [skip ci]