Version 2

Add orientation, better persist state, more verbose documentation, less code duplication, return state, toggle led, more examples