meh restart from here
barebones working
working MVP
:erge branch 'MVP'