Add on_load hooks and modularize requiring