This is one of those ideas which can be infinitely easy or hard to implement depending on how you go about doing this