A Machine that Learns