Separate module list command for readability's sake
Structures rewrite and initialization refactoring

Alock lacks one important feature - reinitialization upon the resolution
change of used display. Unfortunately with current application design it
was almost impossible to incorporate required changes - everything would
become one big entanglement mess.

The main purpose of this commit (and few commits before it) is to refactor
internal structures to allow "on the fly" modifications (reinitialization).
This commit also makes some simplifications to the initialization mechanism -
mainly for the maintenance and readability improvement.
Try to handle setuid errors

According to the documentation, not checking the setuid return value is a
grave security error. It is hard not to agree with this, however in our
application we have to choose between the security issue and the security
issue.

The main purpose of alock is to block unauthorized access to the X server,
so we have to omit some sub-critical errors - in this case setuid error.
Use X Resource Manager

Obtain options for modules from the X Resource Manager. Note, that only the
"visual" tweaks are available via this mechanism. All security related options
should be set explicitly during the run (or used compiled ones).

Used resources (class names):
  ALock.Background.Blank.Color
  ALock.Background.Image.Color
  ALock.Background.Image.Shade
  ALock.Background.Image.Option
  ALock.Background.Shade.Color
  ALock.Background.Shade.Shade
  ALock.Cursor.Glyph.Name
  ALock.Cursor.Glyph.Background
  ALock.Cursor.Glyph.Foreground
  ALock.Input.Frame.Color.Input
  ALock.Input.Frame.Color.Check
  ALock.Input.Frame.Color.Error
  ALock.Input.Frame.Width