basic hover functionality
most functionality working