Allow a buildpack to be locked to prevent changes

As an administrator, in order to provide greater change control, it should be possible to lock (and unlock) buildpacks against further updates through the API.

This PR adds a `locked` attribute to the buildpack model and exposes it via the api.

Any attempt to upload new buildpack bits to a locked buildpack results in a 409 response. This error has been added to the errors repository in its own PR. Subsequently, travis will be unhappy with this PR until that one is accepted.