cleanup and add EXPERIMENTAL rule and rules class