The only crashes I have ever had were related to 2 corrupted .rpk files (errsysinvalidresource_5: Corrupt game data). I have rechecked each file md5 checksum with a tool and redownloaded 2 files. All issues were gone ever since.
So you need to reinvent the wheel then.. You can take a look at how java collections api works: what kind of structures it offers, what kind of methods each structure has and then try to implement it in your way. Also, you can see the source code for each structure in the jdk to see all the details.