Extendible Option class