This looks pretty interesting, possibly more advanced than I would like, but I'll try to come up with an idea that should fit accordingly.