Extracted ResourceSpec to its own object, renaming ResourceSpec to ClientResourceSpec