Working demo

Still needs errormessages and use of enum