I've created the following classes:


And the usage is shown here:


Two questions?

1) Now the question is, I need to save the data somehow (for instance in a database), but the question is where to do it in a design like this?

2) How can I extend it so it is possible to make a threelegged transaction also?