Why is ~/Library/Developer/Xcode/ so huge ?

My "~/Library/" contains 65GB under "Developer/Xcode/" .. viz a viz (truncated):


Ramsay-Mobile:~ gavin$ tree -L 2 /Users/gavin/Library/Developer/Xcode/
/Users/gavin/Library/Developer/Xcode/
├── Archives
│   ├── 2017-04-21
│   ├── 2017-07-08


│   ├── 2017-08-03
│   └── 2017-08-09
├── DerivedData
│   ├── Mini_vMac-bdhpvzcoenybivgwgxlmbjzakpgq

│   └── makeScene-elydekvvpmlricaokmpsthpzttlc
├── DeveloperPortal\ 7.1.1.db

├── DeveloperPortal\ 8.3.db-wal
├── DocumentationCache
│   ├── v10
│   ├── v11
│   ├── v12
│   ├── v13
│   ├── v14
│   ├── v15
│   ├── v7
│   └── v8
├── GPUToolsAgent.sock
├── Products
│   ├── com.ramsaycons.DemosTV\ (tvOS)
│   └── com.ramsaycons.satellite-tracker
├── Templates
│   └── Project\ Templates
├── UserData
│   ├── ARCConversionTargetChooser.xcuserstate
│   ├── FontAndColorThemes

│   ├── ObjCModernizationTargetChooser.xcuserstate
│   ├── SearchScopes.xcsclist
│   └── SwiftMigrationTargetChooser.xcuserstate
├── iOS\ Device\ Logs
├── iOS\ DeviceSupport
│   ├── 10.0\ (14A5341a)
│   ├── 10.0\ (14A5346a)
│   ├── 10.0.1\ (14A403)
│   ├── 10.2\ (14C92)
│   ├── 10.2.1\ (14D23)
│   ├── 10.2.1\ (14D27)
│   ├── 10.3\ (14E5260b)
│   ├── 10.3.2\ (14F5089a)
│   ├── 10.3.3\ (14G5047a)
│   ├── 10.3.3\ (14G5053a)
│   ├── 10.3.3\ (14G57)
│   ├── 10.3.3\ (14G60)
│   ├── 11.0\ (15A5327g)
│   ├── 11.0\ (15A5341f)
│   ├── 11.0\ (15A5354b)
│   ├── 9.1\ (13B143)
│   ├── 9.2\ (13C75)
│   ├── 9.2.1\ (13D15)
│   ├── 9.3\ (13E233)
│   ├── 9.3.1\ (13E238)
│   ├── 9.3.2\ (13F65)
│   └── 9.3.3\ (13G21)
├── tvOS\ DeviceSupport
│   ├── 9.1\ (13U85)
│   └── 9.2\ (13Y234)
└── watchOS\ DeviceSupport
    ├── Watch1,2\ 2.2.1\ (13V420)
    ├── Watch1,2\ 3.0\ (14S326)
    ├── Watch1,2\ 3.1\ (14S452)
    ├── Watch1,2\ 3.1\ (14S464)
    ├── Watch1,2\ 3.1.1\ (14S5869b)
    ├── Watch1,2\ 3.1.1\ (14S5875b)
    ├── Watch1,2\ 3.1.1\ (14S883)
    ├── Watch1,2\ 3.1.3\ (14S960)
    ├── Watch1,2\ 3.2\ (14V5205d)
    ├── Watch1,2\ 3.2\ (14V5214d)
    ├── Watch1,2\ 3.2\ (14V5235b)
    ├── Watch1,2\ 3.2\ (14V5245a)
    ├── Watch1,2\ 3.2\ (14V5249a)
    ├── Watch1,2\ 3.2.2\ (14V5475a)
    ├── Watch1,2\ 3.2.2\ (14V5485a)
    ├── Watch1,2\ 3.2.3\ (14V5751a)
    └── Watch1,2\ 3.2.3\ (14V753)


I understand what much of this is, but questions:


(1) what can I safely cull, either because it will be recreated if required or because it's obsolete becase it's from a previous Xcode version?

(2) what could be removed (automatically) by a new version of Xcode?

(3) can I limit the "device" directories, for example, "iOS DeviceSupport/10.3.3 (14G5047a)" [2.5GB] or even all of "watchOS DeviceSupport") to only those I use?

Why is ~/Library/Developer/Xcode/ so huge ?
 
 
Q