Cleaned up Ability based code

preparing it for "merge" behavior