Renamed When and Unless async versions for consistency
Changed to only execute conditionals asynchronously when necessary instead of always