1) When we add an element to endeavor it is compiled and link edited by endeavour we do not need to do it.
2)When your element is successfully added to any unit level it is available in the same level. So for the testing of the same you can use these unit level libraries.
3)By generating SCL we provide all the information needed for the movements of the modules which in turn is taken as input in the JCLs that gets submitted in batch (if doing in batch).
4)CCID is used to distinguish between various subsystems present in main system.
5)That dataset contains the SCL statement/s you specify when you create the SCL and given as input to the batch job.
6)There can be various levels which might be used for different purposes like Level A is for programmer testing B for acceptance testing and then finally production level.
7)Moving modules from ground level to prodution is the procedure that is followed generally but you can skip levels provided the system allows it though it is not recomended as the whole purpose of version control gets defeated over there.