Jeff,
You were absolutely correct in questioning me about this on IRC previously, and I wasn't prepared to answer all of your questions.  After our discussion I went back over these providers in much greater depth and feel your original concern has been taken care of by the additional commits.  The provider should now act identical to the existing provider with the only exception being a local account is managed when setting forcelocal => true.

One of the concerns I remember from our IRC conversation was around the libuser commands  changing password encryption from what is standard on the machine.  After further reviewing the useradd provider I discovered it just drops the value of the password parameter directly into /etc/shadow.  The luseradd/lgroupadd commands that are used for local account management will behave the exact same way.   So there is actually no difference there.

The other concerns seemed to just be in general that the libuser commands would cause the provider to behave differently, or provide something more than just the ability to manage local accounts.  

I have carefully reviewed the differences in these commands and written this patch such that it will not add or remove any functionality to the provider except the ability to manage local accounts when they also exist remotely.  There were a few small differences between the luseradd/lgroupadd commands which I had to code around to make this possible.  One specific example would be the luseradd command does not support the -G option for adding a user to multiple groups.  So instead of passing -G to the luseradd command the luseradd comand is used to create the user and then usermod is called immediately after with -G to add the user to the appropriate multiple groups.  This is similar to how password ages are currently managed by the provider.  Since the useradd command doesn't support setting the password age, chage is called after useradd for new users when exipry needs to be managed.