[Script] Super simple UI picker for Flex Rig

Im beggining to learn some scripting for blender and decided to make this UI picker for a rig I used called Flex Rig from CG cookie.
https://cgcookie.com/resource/cg-cookie-flex-[B]rig/

[/B]Its not much but here is what I have now:


If any of the more experienced coders could check my code for things I could do better I would appreciate it, thanks.

import bpy

########################################################
#Select a bone operator


class SelectBone(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.select_bone"
    bl_label = "Select given bone"
    bone_name = bpy.props.StringProperty(name="bone_name") #the bone to be selected (set in ui)


    @classmethod
    def poll(cls, context):
        return context.active_object is not None


    def execute(self, context):
        allBones=bpy.context.object.pose.bones #get all bones
        
        for thisbone in allBones:
            thisbone.bone.select=False #deselect all bones
                
        allBones[self.bone_name].bone.select=True #select the one we want
        return {'FINISHED'}
    
    
########################################################
#Show Hide bones
class HideBone(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.hide_bone"
    bl_label = "hide given bone"
    
    @classmethod
    def poll(cls, context):
        return context.active_object is not None


    def execute(self, context):
        allBones=bpy.context.object.pose.bones #get all bones  
        for thisbone in allBones:
            if thisbone.bone.select:
                thisbone.custom_shape.modifiers["Mask"].show_viewport^=True  
            
        return {'FINISHED'}


########################################################
#UI for picker


class CharPicker(bpy.types.Panel):
    #Create panel in 3dview tools in new Picker tab
    bl_label = "Character Picker"
    bl_idname = "OBJECT_PT_Picker"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'
    bl_category = "Picker"


    def draw(self, context):
        
        #put all buttons asigning a bone_name for each
        layout = self.layout #layout for buttons
        layout.label(text="Pick Bones")
        
        #First the head and neck in the middle
        column = layout.column()
        split=column.split()
        col=split.column()
        col=split.column()
        col=split.column()
        col.operator("object.select_bone",text="head").bone_name="head"
        col.operator("object.select_bone",text="neck").bone_name="neck"
        col=split.column()
        col=split.column()
        
        #now both arms
        row = column.row()
        row.operator("object.select_bone",text="hand_r").bone_name="hand.ik.R"
        row.operator("object.select_bone",text="elbow_r").bone_name="elbow_target.ik.R"
        row.operator("object.select_bone",text="shoulder_r").bone_name="shoulder.R"
        row.operator("object.select_bone",text="chest").bone_name="chest"
        row.operator("object.select_bone",text="shoulder_l").bone_name="shoulder.L"
        row.operator("object.select_bone",text="elbow_r").bone_name="elbow_target.ik.L"
        row.operator("object.select_bone",text="hand_r").bone_name="hand.ik.L"
        
        #again in the middle the spine,torso,etc
        column = layout.column()
        split=column.split()
        col=split.column()
        col=split.column()
        col=split.column()
        col.operator("object.select_bone",text="spine").bone_name="spine"
        col.operator("object.select_bone",text="torso").bone_name="torso"
        col.operator("object.select_bone",text="hips").bone_name="hips"
        col=split.column()
        col=split.column()
        
        #both legs
        row = column.row()
        row.separator()
        row.operator("object.select_bone",text="knee_r").bone_name="knee_target.ik.R"
        row.operator("object.select_bone",text="knee_l").bone_name="knee_target.ik.L"
        row.separator()
        row = column.row()
        row.separator()
        row.operator("object.select_bone",text="foot_r").bone_name="foot.ik.R"
        row.operator("object.select_bone",text="foot_l").bone_name="foot.ik.L"
        row.separator()
        row = column.row()
        row.separator()
        row.operator("object.select_bone",text="toe_r").bone_name="toe.ik.R"
        row.operator("object.select_bone",text="toe_l").bone_name="toe.ik.L"
        row.separator()
        
        #finally the root
        column.operator("object.select_bone",text="root").bone_name="root"
        
        #Now the show and hide
        layout = self.layout #layout for buttons
        layout.label(text="Extra")
        column = layout.column()
        column.operator("object.hide_bone",text="Show/Hide")
    
    
def register():
    bpy.utils.register_class(SelectBone)
    bpy.utils.register_class(HideBone)
    bpy.utils.register_class(CharPicker)


def unregister():
    bpy.utils.unregister_class(SelectBone)
    bpy.utils.unregister_class(HideBone)
    bpy.utils.unregister_class(CharPicker)


if __name__ == "__main__":
    register()