add a logic map, almost finish basic UI