Create a weight-able model to support issuable weight

Summary

We want to consider creating a weigh-able model that would encapsulate the weight type and supporting methods given we have now extended it to:

supports_weight

and

weight_available

See: !40794 (comment 404604775)

Improvements

Move weight methods to single model.

Involved components

  • ee/app/models/concerns/ee/issuable.rb
  • ee/app/models/concerns/ee/issue.rb
  • ee/app/models/concerns/ee/milestone.rb
  • ee/app/models/concerns/ee/weight.rb