extracting textholder to new class, making demo simpler to read