#SquirrelJME: So how I am going to implement ReferenceQueue is simple, when things are collected I guess I could just have a passive queue that when the reference is next used, if null it will be stored into the queue. Not the fastest or best way to free items though, oh well.