As it stands it's difficult to parse through and contribute to this project, splitting the main file into multiple would make this easier. Is this something that's possible without breaking the public interface ?