Object Oriented Design Pattern to address Role Based User Managment for PHP or anyother OOP language