Initial, basic version. Only menu still needs work.