Changed GAMESTATE:SetCurrentSteps and GAMESTATE:SetCurrentTrail to attempt to set a compatible style if AutoSetStyle is true.
Changed SetCompatibleStyle to only change when incompatible.
Merge pull request #208 from kyzentun/AutoSetStyleInSetCurrSteps

AutoSetStyle convenience
created ArrowEffects namespace

and exposed all arrow effects functions. This can allow themed elements
to move with columns during gameplay, such as column specific judgments,
flashes, or whatever else.
Documentation from Matt for ArrowEffects namespace.
Fixed invalid LineNames in ScreenOptionsExtended in _fallback metrics.
Added heart rate based calorie counting method to Profile as an alternative to step count based calorie counting.  Removed unused IsWeightSet from Profile::SaveGeneratlDataCreateNode.
Added doc explaining what a theme needs to support heart rate calorie calculation.
Merge pull request #210 from kyzentun/HeartCalories

Heart calories
Changed SCREENMAN:SetNewScreen and AddNewScreenToTop to emit an error for an invalid screen instead of crashing stepmania.
= Operator should check for self-assignment
Minor performance enhancement

`list.empty()` runs in constant time; `list.size` can run in linear time.
`list.empty()` runs in constant time; `list.size` can run in linear time.

Sources:
http://www.cplusplus.com/reference/list/list/size/
http://www.cplusplus.com/reference/list/list/empty/
Remove memory leak in RageSurfaceUtils::Palettize
Merge branch 'patch-2' of https://github.com/moshekaplan/stepmania
Merge branch 'patch-3' of https://github.com/moshekaplan/stepmania
Added semicolon that moshekaplan forgot.