Fixed issue #3: prevent to create a user with a null or empty ID

Added control over invalid chars in userID.
Added static vars User::minUserIDNChars and User::maxUserIDNChars to
limit userID length
Renamed exception userIDEmptyNull to userIDInvalid
Changed classes User, UserManagment
Added respectives tests