Currently the move tutor is a little bit broken - the IDs are 1 above how they should be. Shell speculates that it's searching at the table starting from Kangaskhan due to the way the decrements shake up but it may just be making things more complicated than they are.
Big cheese code is `PrepareTradebackMoveList`, it's where things are mucking up.
Also, the code can be significantly optimised, as it's currently being adapted from the function above, `PrepareRelearnableMoveList`; It doesn't need to check levels, for example.
Note that the relearner functions properly, so use it as a reference. I may have removed something important.
Technically, we could have NO_MON as an entry which may make things shake out properly. But I'd rather have a proper fix.
Underwater Tunnel is a new area that links Route 25 to Route 10, basically just being a straight tunnel needing Surf to traverse.
Also given Seafoam Islands and Lorelei's room an unused palette that gives it a more icy feel