compiles with a few warnings, but they should be fine. Add functionality to Main