Unified and cleaned up property declarations and usages.
Migrated class factory convenience methods from returning `id` to `instancetype`.
Added a couple of convenience factory methods.