8232588: G1 concurrent System.gc can return early or late
8233279: G1: GCLocker GC with +GCLockerInvokesConcurrent spins while cycle in progress
Summary: Refactor G1CH::try_collect and fix bugs with concurrent collections.
Reviewed-by: tschatzl, sjohanss