adding pervasive safety checks for using Underscore functions on objects that jsut happen to have 'map', 'reduce', or 'filter' etc. properties that aren't functions.
(cherry picked from commit 0ed4212ec6d9217ce43d8bf566c411f96a052c5c)