Refactor waitcondition resources to allow easier subclassing

Rework the WaitCondition resources to define some class variables
which will make inheriting from them to implement native resources
easier.

Change-Id: I518bc112cda78a64f079da582be6dc1e3fd00baa
blueprint: native-waitcondition
Merge "Refactor waitcondition resources to allow easier subclassing"