add preliminary UI, layer control, etc