Fix issue #6584942 IllegalStateException: Failure saving state...

...active SuggestFragment{419494f0} has cleared index: -1

There were issues when the same fragment was removed and then
added again before completely finishing the remove (such as due
to a running animation).

Two fixes:

- Now when you call FragmentTransaction.replace() and are replacing
  a fragment with the same fragment, this becomes a no-op, to avoid
  visual artifacts in the transition and bad states.
- When we are moving the fragment state up and it is currently
  animating away to the INITIALIZED state, we could end up making
  the fragment inactive as part of the cleanup.  In this case it
  shouldn't be made inactive; we just need to initialize it but
  keep it active since we are going to continue to use it.

Bug: 6584942
Change-Id: I8bfd73f2d8ef8f67b541b3e2525dfa5db6c3bfa5
3 files changed