Happiness 'boosts heart health'