1. Clean up the error handling in smblib ...

2. Implement more functionality ... :-)

3. Allow callers to specify local name. Reason for this is greater 
   flexibility in the case where caller wants to pretend to be a 
   PC NETWORK PROGRAM 1.0 style client, then they can get higher level 
   servers to log them in when a tree connect is done.

