bug fixes and ui addition, still need play function