This is a good intermediate react interview challenge