Added linux support but kept the same (weird) folder layout, really needs cleaning up!