Add source files

The beginning is here, now actual talented programmers can take a look
and fix things!