first version of the source code, console not usable yet but everything compiles