project init.
generic abstract classes
child classes
random generation (empty, fence, obstacle, part)
empty blocks
ui