The TSN article says we have 40+M in space but that's referring to 2018-19.
We have Hyman/Brown/4C/2G (let's pall bark an upper bound of 8M for all four) left to sign at minimum, and we're pretty much up against the performance bonus cushion ceiling before it starts to eat away at our actual cap ceiling.
This means bad news for Rychel, Rosen, Borgman as they'll be less likely to be accommodated due to their potential bonuses, and great news for Kapanen and Dermott who, thanks to signing their ELCs right out of the gate after the draft, now have 0 performance bonuses.
That leaves about 4-5M for UFA. If we move JvR/Bozak, that's another ~4M to play with. If we want Shattenkirk or Kovalchuk, that third line needs to be traded off, freeing up Marner to play Kadri's or Matthews' wing.
Kovalchuk makes more sense to spend on than Shattenkirk, especially with the NJD trade freeing up contract slots and cap room. Forward heavy + mobile defense (even average ones) can work as long as you don't play conservatively.