Need some way for the player to keep track of quests. Consider adding some kind of journal engine which maintains a list of open quests. This should probably have an ID tag (IOW the key value), a description (the text that appears in the journal entry) and a category (so the journal display can split main quests and side quests). There will need to be a script function to add entries and remove them. It might be a good idea to store the journal descriptions in a special file rather than inline in the script code, to ease translation and to make the spoilers harder to find.
You might be able to reuse the datalist system in the engine to do some of this.
You will also need some facility or tokenising mechanism in the book viewer to make it display the journal entries, if any. This side of things will require some thought as the book viewer isn't really equipped for variable numbers of pages.
A quick and dirty approach might be to use a fixed space but leave blank pages free in a diary or something, but if we go with using the mobile phone for that it won't look as good.
Items must be marked as completed, rather than deleted. Otherwise it will be possible to re-trigger a quest if there are several ways to do it.
A possible approach to the display problem would be to rewrite the text console code as a class so that there can be several windows, and use one of those to provide a scrollable text window for notes etc.