Abstracted GPIO calls into GPIO device

All general GPIO calls are now through a gpio_* interface.  All existing
gpio operations have been migrated to this interface, and all pin definitions
have been changed to 0xNN format (port[1-7] << 4 | pin[0-15]).