Autoconf work

Trying to make the script a bit easier to manage when dependency versions change (bison, we're looking at you).
As such, I've added some m4 macros.

While I'm here, I'm also cleaning up the oniguruma detection to be much simpler/cleaner.
On the topic of bison, I assume we're allowing plain `yacc` as well as `bison -y`?  As the configure script exists currently, if we detect your yacc isn't bison, we just move along happily.  I've continued to allow this.

Don't merge this yet, I'm still working on it.

Thoughts?  Comments?  Concerns?