Bug 1004388 part 1.  When we're testing an MPhi that doesn't represent the and-or pattern, just fall back to optimizing the typeset for the true/false branches based on the truthiness directly, like we would for the non-MPhi case.  r=jandem
Bug 1004388 part 2 - Call improveTypesAtTest in more cases. r=bhackett