Improved NeoPixels handling

The code for handling NeoPixels has been updated to fix bugs and make syntax more consitent when shifting, rotating or inverting pixels

Hopefully this image will show the new syntax and capabilities – tweet me @cymplecy if bugs found or more infor/ improvements needed