Add additional callbacks

Resize hooks into the update method and returns the new width and height
goto is called upon manual navigation by the user
Modified the width height aspect ratio calculation to account for max sizes