Provide, and use From impl for InternalError
Adding this autoconversion is quite safe since every error generation site is explicit and has its own context, and we don't really need to add more.
This simplifies the code and will simplify future work.