Tidied up the code a bit, added single object scaling alongside global object scaling, works pretty well