Convert decoder lookup to a const table, minor documentation changes.
Add an unsafe decoder for the heck of it.
merge from mdakin