Basic functionality in place

Now can focus on making things pretty