added recursive pathing. For the lulz
merged changes