Heavily modified the micro code to include interrupt for edge detectioin
Added mutex locking to the controller class