beginnings of adding component handling