Okay, I have come up with a theory on how it might work.
Every frame, the main class would call chunkmanager, which tells each chunk to render itself via mesh object. Tells which chunks have been edited (ie, build/destroy), and adds them to the loadmesh queue. Loads one chunk from each queue. If it has been X frames, ask each chunk if it is outside of the boundaries for a chunk to be rendered. If a chunk is too far away from the player, add it to the remove queue. Check the players location, transfer that to chunk coordinates, and check if the chunks around the player are loaded. If they are not loaded, add them to the load queue.
Is that feasible? Or would you spread out the update more instead of doing it in one frame? Thanks! I also will be storing the chunks in bigger chunks.