Teaching Small Language Models to Reason