Reactive: A Generic Modular Reference Architecture For Cloud Computing Environments