1) The second form should only be used if the class has to be extended e.g. when a subfunction must be overwritten. In all other cases I would prefer the short form (1).
2) Maybe some fields in your databaseare missing in the database scheme on your test system. have you added the bank account fields that have been added lately?
3) The domain module is not included yet as it gets removed before the 3.0.5 release. The functionality is included in the client module as the function of the domain module is a cleint limit and it should not have been a separate module.