ve.getStartAndEndRects returns null for empty rect lists

Currently returns {start:undefined,end:undefined} which is confusing.

Bug: 70770
Change-Id: I80d0632fd8b4b5e716b79966dc412cb9b9caa4ff
(cherry picked from commit badcac52d7dc14b1e0b597b35b8a02cc7b1c822f)
Account for the case where a FocusableNode has an empty outerRects array

In this case boundingRect will be null, so don't try to modify it.
Also, ve.getStartAndEndRects() will return null, so check that too.

Bug: 70777
Change-Id: If67fe35b540b667d85b21f9bbbbe6a73caac2ddb
Merge "ve.getStartAndEndRects returns null for empty rect lists" into wmf/1.24wmf21