Avoid IndexOutOfBounds Exception in ActivityManagerService

1. finishActivityLocked() doesn't give guaranty to remove only
   one ActivityRecord from the history stack.
2. Unfortunaly if our topRunningActivity is top of the stack,
   then there is potential IndexOutOfBounds Exception in
   ActivityManagerService.
To avoid it, we can just traverse to the top of the history stack.

Change-Id: Idf06356e643789ccfd493d7097278cea44bdf395
Merge "Avoid IndexOutOfBounds Exception in ActivityManagerService" into jb43