You also want a rich set of available widgets; you're usually better off reusing an existing date picker or file browser component, for example, than writing your own.
The genetic component is essentially a write-off - there's precious little we can do about this until gene therapy or some equivalent lets us adjust our pre-set happiness levels.