Operating system users and groups 

http://www.linuxsecurity.com/docs/harden-doc/html/securing-debian-howto/ch11.en.html

Are all system users necessary 

Yes and no. Debian comes with some predefined users (id < 99 as described in Debian Policy) for some services so that installing new services is easy (they are already run by the appropriate user). If you do not intend to install new services, you can safely remove those users who do not own any files in your system and do not run any services.

users 

These users are provided by base-passwd. You will find in its documentation more information on how these users are handled in Debian.

The list of default users (with a corresponding group) follows:

groups 

Other groups which have no associated user: