added GPIO mapping and bulk of average man code

also added thanks to average man