reordered initializations to silence compile warnings
added usage example sketch with a few comments to explain the usage