refactor code into logic-separated modules. Add Data table to front end. Fix Socket.io not in dependencies list