[GH #957] Throw exceptions about non POSIX strcmp in default case

rurban++ for the code review
[GH# 957] Throw unknown key type exceptions in default case

Instead of just keeping the compiler happy, this actually does something.

rurban++ for code review