adds all functionality and some styling
finishes design