Introducing a General Multi - Purpose Pattern Framework: Towards a Universal Pattern Approach