Generating Boolean networks with a prescribed attractor structure