Re-inserted RecursionGuard constructor to keep existing constructor overloads, but marked it as obsolete.