Added ArchLinux AUR support (uses packer or yaourt).

I've added 'aur' as a separate installer type, to be used as follows:

dep_name:
  arch:
    aur: [my_aur_pkg]

When rosdep is initialized, it searches for yaourt and packer in your
path, and if either one is found, rosdep will register the AUR installer
with the discovered script (using packer if both are found).

I considered the following alternative arrangements:

dep_name:
  arch: [aur/aur_pkg, official_pkg, community/aur_pkg2]
  # Here, 'aur/'-prefixed packages go to packer, otherwise pacman.

dep_name:
  arch:
    packer: [aur_pkg]

The major advantage of alternative #1 is that it allows you to
specify both AUR and official packages to satisfy a single dependency
key. Per REP 111, "rosdep rules are only allowed to specify a single
package manager to fulfill them." So far this only affects the 'eclipse'
rule, which required the 'eclipse' package and three AUR packages.
Register the 'aur' package manager whether or not a script is found.

get_install_command will raise an error if packer and yaourt are missing.
Detect packer/yaourt in get_install_command(), not at init.
Added support for detecting packages that "provide" other names.

Now rosdep will accept, e.g., python2-rospkg-git for python2-rospkg. I couldn't
find any way to get pacman to search for packages that match a "provides"
query, and I didn't want to depend on another library, so I added a function
that parses the /var/lib/pacman/local/$package/desc files.
Forgot to escape the package name before adding to regexp.