Basic version working, but lots of bugs.