Lots of thread testing using products ArrayList. Read Comments for timeline