olsl21

Results 4 issues of olsl21

### Description of issue Currently, the generator generates all the Attribute classes in `_attributes.py.mako` for all drivers even if some of them are not used. We should make the generator...

### Description of issue A user can use `get_channel_names()` as follows: my_session.channels[[0,1,2]].get_channel_names("0-2"). This is equivalent to no sense. It's equivalent in functionality to `my_session.get_channel_names("0-2")` but the `channels[]` part is ignored....

API
nidigital

### Description of issue Currently, calling `session.channels["2"].get_channel_name()` or `session.channels["2"].get_channel_names()` would result in `AttributeError: '_SessionBase' object has no attribute 'get_channel_name'`. Ideally, we could improve on it and raise a custom exception...

### Description of issue Currently, the return value of `get_date_and_time()` related function(s) is correctly named "last_cal_datetime" in NI-SCOPE, but incorrectly named "month" in NI-DCPower, NI-DMM, NI-FAKE and NI-Fgen. They should...