Why don't you simply start a thread with the code you desired for the timer-control? As PB is not OOP, a object like a timer-control makes simply no sense to me...
A good, builtin grid-control would make sense. A image-viewer gadget seems not as important to me.
You create a timer-object (gadget) on your form. Upon this, you define an intervall in the properties of this object. Now you can insert code to the timer-event fired in this object (like you can insert code to every event of any other gadgets). The event gets fired automatically in the given interval and executes the timer-code.
Yes. I use CreateTask() for such functionality. It is, in simple cases, not really more work than placing a timer-object. Additionally, threads are much more flexible and are using hardware-ressources more effectively (multi-core CPU, hyperthreading).