Default implementations of core interfaces that most people will choose to use. You can implement these framework classes yourself if you want to completely define how the this framework works under the hood, but this is a very advanced use case
Contains packages that can be plugged into your application to provide commonly required functionallity like menus, tabs, login, data entry, text editing etc
Provides a UI for editing pages, layouts, regions etc within the CMS. You can include this in your website to allow the pages to be modified, or you can build a separate website (intranet) for managing website content