Circular dependency removal (PoolCurator <--> Enforcer)

Please review these changes.

Key notes:
- Resources now go through PoolManager instead of directly invoking PoolCurator