I've been trying to get help with a question similar to this for awhile, and this is as simplified as I can make it. Yes, it has to be CFraming for reasons. In the end the CFraming has to be done with welds, a part with a part called the pivot in the middle of it.
If somebody could at least tell me how to make a part point towards your mouse with CFraming it would help a lot, thanks.
A common way to make a cframe would be to use CFrame.new(Vecto3Value,Vector3Value)
This will return a CFrame that is at the first position, and looking at the second position. wiki has more information on this.
brick.CFrame = CFrame.new(Brick.Position, Mouse.Hit.p)