I'd do 2 trades:
TOR:
Petry 2M retained by Mtl (3.5M AAV)
Drouin
MTL:
Nylander
Sandin
Horton
PHI:
Andrew Shaw
Scherbak
MTL:
Strome, Matthew
Flyers 2019 2nd rd pick
Flyers 2020 6th rd pick*
*Conditional to Shaw playing more than 40 games in 2018-2019.
Overall Montreal ends up with:
Nylander
Sandin
Strome
Flyers 2019 2nd rd pick
Flyers 2020 6th rd pick
2M in retained salary
LTIR Horton at 5.3M
They also drop 3 roster players as a net move, allowing them to be a 24 man roster once everyone is healthy. (They'll need to bury, waive, or trade again to fall under the 23 players limit.)