Fix places where kStrMapKind was not a case along with kIntMapKind and kMixedKind

Reviewed By: @paroski

Differential Revision: D1483939
Make the logic for raising checked array warnings clearer

Summary: Make it explcit in places that we are raising warnings because the templated
array kind is either `kIntMapKind` or `kStrMapKind`. The `!= kMixedKind` checks
should be reserved for behavior that both `kIntMapKind` and `kStrMapKind` should
exhibit.

It worked previously because in array-data.cpp we don't ever instantiate the
templated version with the "wrong" kind because of the different DISPATCH_XXX
macros.

Reviewed By: @elgenie

Differential Revision: D1478372