Refactored ideas to match Andrew's needs and desires.