Let's *NOT* use namespaces
main: bring in word functions
Revert "main: bring in word functions"

This reverts commit aaa294ae17d65205e3f2a387eb5d557d89e14158.

Let's do this properly, with classes, etc.
add a couple more .gitignore rules
Magic: implement the Magic class

also implement Seeker, Counter, UserInput and Vars classes
as helper classes