initial gui complete, still need to add finishing touches