Asynchronous, Distributed Optical Mutual Exclusion and Applications