Refactored code, added NonBlockBlink, and initial arguments code.