Fixes a case issue and improves debugging

When doing the stricter array matching, I forgot to add an ignorecase
flag to deal with the lowercase "appname" and "exe".

Also prints out the shortcuts array on failure so I can tell what failed
and where.
Adds another test case.