basic file structure
a lot of basic work done