USER METHODS default implementations
This class adds methods that deal directly with possible user storage and lookup tables.
The methods defined in the class are used by the class GeneralAuth found in general_auth.js in particular.
The default behavior is for the user to be stored in the persistence DB, which is most likely to be
implemented by a connection to a DB service. Except there is one method fetch_user_from_key_value_store
that is used to get user information from the key-value DB, which is expected to be faster (in local memory).
Some applcations may want to override this class in order to change the kind of user table storage arrangement from
what is provided here. Even without the override, the constuctor expects that objects linking to external databases to be parameters.
Within the user methods, the user object, u_data (often) is expected to have an identity field, _id.