Refactoring async and defer attributes into booleans

Thanks to @pornel for pointing out that these attributes were booleans