Add a component time picker widget

Currently oscar doesn't have time fields but we do and others can, too.
Remove duplicate ifs

Before, different widgets were used for each case, now it's the same
widget, so only one test is needed.