Get columns used by a regression of LCM model

With Regression models use the `.columns_used()` method to get all the columns used within the model both for filtering and in the patsy expression.

With LCM models it's a little more complicated because they deal with choosers, alternatives, and the merger of the two. So with LCM models there are four new methods:

- `.choosers_columns_used()`
  - Columns from the choosers table known to be used for filtering.
- `.alts_columns_used()`
  - Columns from the alts table known to be used for filtering.
- `.interaction_columns_used()`
  - Columns known to be used from the interaction table. We don't know which table each one originally comes from.
- `.columns_used()`
  - Columns used from any table for any purpose by the model. We don't know which table each one originally comes from.