Pix2Code: Learning to Compose Neural Visual Concepts as Programs