Is there a reliable replacement for the Quaternion math in blueprints?

When composing a quaternion from two vectors, the first vector is the master vector which the new rotation will do its very best to adhere to! The second is the slave vector, which will supply all other rotation information. For example, by using the surface normal as the Z vector and forward as X, you can align a character with a surface using Compose from ZX!