First pass at receive(), works so far!