Supports arbitrary network sizes, prints errors when invalid inputs are provided, simplified the lifecycle of a neuron.