broke out progress class, helps pickle