configure: uniform the defines to #define HAVE_xxx (0|1)

The configure followed 5 different convetions of defines because the next guy
always wanted to introduce a new better way to uniform it[1]. For an
hypothetic feature 'hurr' you could have had:

  * #define HAVE_HURR 1   / #undef HAVE_DURR
  * #define HAVE_HURR     / #undef HAVE_DURR
  * #define CONFIG_HURR 1 / #undef CONFIG_DURR
  * #define HAVE_HURR 1   / #define HAVE_DURR 0
  * #define CONFIG_HURR 1 / #define CONFIG_DURR 0

All is now uniform and uses:
  * #define HAVE_HURR 1
  * #define HAVE_DURR 0

We like definining to 0 as opposed to `undef` bcause it can help spot typos
and is very helpful when doing big reorganizations in the code.

[1]: http://xkcd.com/927/ related
Merge branch 'master' into have_configure

Conflicts:
	configure
fix weird DPMS->EXT replacement
define HAVE_COREAUDIO on platforms other than OSX
fix HAVE_JACK being undefined

Holy inconsistency, let's just kill it with waf.
fix HAVE_PTHREADS being undefined on windows
Merge remote-tracking branch 'origin/have_configure'
osx: fix -Wshadow warnings on platform specific code