add a gas_spring calculator
rename properties of gas_spring for clean coding
temp commit
Seperate fields of GeneralSetter from fields of instance, extact a GasSpring's general father AutoFunction

  - GasSpring will not use __metaclass__ directly
  - GasSpring() create absolutely new instance everytime
Refactor the class name of auto_function module

  - GeneralSetter -> AutoFunctionPropertyGetterSetterFactory
  - Constants -> AutoFunctionConstants
  - change all the specific 'gas_spring' paramenter to general 'inst'
  - fix a small bug in AutoFuncton.status()