Music fade transitions

Also, Vector2D no longer uses an inline getter for typing but works with
locals instead when referring to itself.