Keyframe.lock: lock moving of keyframes that are set to 'lock' (accessible via Python)

* They are drawn as pink (themeable) in dopesheet, and button values.
* They can't be updated (moved in dopesheet, graph editor, or updated with keyframe_insert)
* They can (yes) be deleted.

Squashed commit of the following:

commit 5f25f44a602ce7988f4c504e6d8bcf1b909261f2
Author: Dalai Felinto <dfelinto@gmail.com>
Date:   Tue Jan 7 15:51:37 2014 -0200

    fix for lock color not shown in block if last keyframe of column wasn't
    locked

commit bb67df3475e3cf3ea15fbf37c822363ceb68d380
Author: Dalai Felinto <dfelinto@gmail.com>
Date:   Tue Jan 7 15:09:22 2014 -0200

    Prevent update of locked keyframes

commit 21723d4991c96c7cec16a1b1229ed73f967daae3
Author: Dalai Felinto <dfelinto@gmail.com>
Date:   Tue Jan 7 13:07:45 2014 -0200

    draw pink (themeable) locked values in buttons

commit 2014c617bf196766826d8f2cef38ae933ad40ec6
Author: Dalai Felinto <dfelinto@gmail.com>
Date:   Tue Jan 7 11:54:40 2014 -0200

    draw pink keys for locked keyframes (in Dopesheet)

    This should help the user understand why she cant move a keyframe

commit 67876de20b1a57ffb5c4ba3be8966ff511db1cc9
Author: Dalai Felinto <dfelinto@gmail.com>
Date:   Tue Jan 7 00:29:08 2014 -0200

    lock moving of keyframes that are set to 'lock' (accessible via Python)