(PUP-2991) Add test case for user shell management

This commit adds a test case to validate the shell attribute of
the puppet user resource is being managed by the manifest.

This test validates that the set shell on creation is part of the
user profile. It also tests that the shell is updated when the
shell defined in the manifest changes.