Basic code complete, needs fixing.