Agent is an attempt at modelling Go-like concurrency, in Ruby