homepage largely refactored