The system can do a lot of interesting things. But the user doesn't want to be bombarded with information learning about them all at once.
The system slowly reveals features over the first phase of use.
As with Confirm Configuration and similar patterns, the designer should think of the features of a piece of software not just extending across a UI, but also in time. Not only what is displayed where, but what is displayed when and on what trigger? Whole sections of the app may initially be hidden and only activate later when relevant.