Add support for active-high limit switches

This patch allows for building a version of grbl which expects the limit switches to be active high, instead of active low. The functionality is enabled at compile time by defining the macro LIMIT_SWITCHES_ACTIVE_HIGH, which has been documented in config.h. Active-low limit switches are still the default.