When parsing XML, don't assume the document structure is fixed

The old XML parsing code assumed a specific document structure, and
located elements by their position in the document rather than by their
name.  This made the parser very fragile.

For example, when CAS switched from OpenSAML 1.1 to OpenSAML 2.x (per
CAS-951 in CAS 3.5.1), some minor changes in the XML document structure
of SAML responses were introduced, which broke the old XML parsing code.

This new parsing code searches for elements by name, making it more
robust.
Improve readability (per pames' comments)
Fixed detection of apxs (and apr-1-config) in configure.ac
Add 'pretty' make target as first step toward enforcing code style
Minor cleanup, removing errant 'i' in mod_auth_cas.c:1474
Fixed baseclean target in Makefile.am, and other clean targets in all Makefile.am
Updated auto* artifacts
Fixed 'pretty' make target
Fixed 'pretty' make target
Squashed commit of the following:

commit 2dfb2fc64afbb56cc6d3be274981e5cc1f5b37af
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Tue Sep 18 09:04:07 2012 -0300

    Make the unit test ever so slightly more useful by actually checking all return values and using the proper regex for case-insensitive non-capturing group

commit cbd22f8a3d976df590ceb8743ed7e01891ece985
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Mon Sep 17 10:10:33 2012 -0300

    Add a test to validate using the regex ?i modifier

commit a074ec9eb84057907806bd5fb991d10e39fc402f
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Mon Sep 17 08:28:39 2012 -0300

    Use case-sensitive matching. Modify unit test to validate that case matters.

commit 84d76f9f0b42ac6f6ede7744e011b2fa9af598e9
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Thu Sep 13 11:14:04 2012 -0300

    Adding a note that the matching is case-insensitive

commit 951af91e3741ef7d204501daccae2a0589c65edc
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Fri Sep 7 11:22:01 2012 -0300

    Adding configure check for libpcre, compliments of bnoordhuis

commit e11e621fbd3b9a8d2f933e24f856eff669f71b4b
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Fri Sep 7 10:19:02 2012 -0300

    Removing unneeded parens around function pointer call

commit be0783a36a97e6ec0859803a120daefa9bf78469
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Fri Sep 7 09:50:47 2012 -0300

    Fixing style issues

commit af2a82b45110fcb0e03853e8b79f100a94ae6060
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Fri Aug 24 22:24:58 2012 -0300

    Update README files to note libpcre dependency and the second form of "Require cas-attribute".

commit f2bdf899ea841e2c18eb7efd7d18044ddd557d26
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Fri Aug 24 21:55:41 2012 -0300

    Use PCRE library instead of ap_regex. Fix unit test so it isn't ignored.

commit 3be2d44ce0b12fd3587f1b434372b46706ca8548
Author: Joel Goguen <jgoguen@jgoguen.ca>
Date:   Thu Aug 23 14:57:10 2012 -0300

    First shot at regex value matching