Really great game, nice job! I played to the finish and really enjoyed playing. This is an impressively complete and polished game. You implemented many movement mechanisms here and they not only functioned smoothly, they were also well implemented as player controls -- I never felt overwhelmed by which keys to use for all the various additions. The save functions worked well and were judiciously placed, the dialogue system and camera movements were very smooth. The spirit who follows you worked very well and didn't feel like it was in the way. The boomerang was also crisp. Everything was well assembled into the game -- great job!
Some feedback I hope is useful: while I think it's a good idea for the enemies to respawn at some point when you return to rooms, the way all enemies respawned if you passed out of the room for even a moment felt a little frustrating. In several rooms, combat takes place immediately at the entry point. (In a few points, you can be attacked and struck before you really see the enemy, which might also be adjusted). If while in combat near the door you touch the door collider, you're sent out of the room, and when you pass immediately back in, all enemies you defeated are back. Perhaps the use of a timer for how long one must be gone before a full respawn occurs, or perhaps requiring that the player move two rooms away instead of one for a full respawn, would improve the feel of this. Separately, the message you get when you press F at a savepoint might be played only the first time, because for the remainder of the game the player has to repeatedly hit the F key at each save and wait out the dialogue boxes.
Again, very impressive game, nice work!