OSOM: A Simultaneously Optimal Algorithm for Multi-Armed and Linear Contextual Bandits