Making Extract.source_id non-nullable.
Extract.id is an Integer again.

I was getting a vague transaction error when I tried to save an Extract to the
database. I reinstated the Integer id column and the error stopped happening.

The UUID that the front-end sends is not needed for anything in the back end
and is only meant for the backbone environment. The front-end code is copying
the [automatically generated](http://backbonejs.org/#Model-cid) client-side id
into the new model instance's id parameter, causing backbone to think it needs
to `PUT` when the instance's `save` method is called. This behaviour is wrong and
unnecessary.
Adding method Extract.serializable().
Extract api endpoints use real data.
Extract.serializable() better conforms with the expectations of the front-end.
Returning serializable extracts in extracts.get()

Instead of returning serialized extracts.
Fixing post_extract view.
Front-end doesn't set a segment's id at initialization time.

This was causing backbone to use put to save the model for the first time, when
the right method is post. Also, there is no need for the front-end to be
generating ids for the back-end.
Sending capturing idPost when creating a segment.
Merge branch 'develop' of https://github.com/ImaginationForPeople/assembl into develop

Conflicts:
	assembl/static/js/models/segment.js
	assembl/static/js/views/message.js
	assembl/static/js/views/segmentList.js