If you were tasked with building a lightweight version of PyTorch from scratch, what would be your architectural approach?