Split up an overly large spec it.
Refactor item_spec.
Fixes bug in move_to.

This would crash bra if one tried to move an item from one parent to another.
Improve playlist_spec.

There are now more tests, some of which are splits from other tests and some of
which are entirely new.

This helped catch the bug fixed in the previous commit.
Object ID defaults to nil with no parent.

In addition, the object ID goes back to nil if an object is moved from a parent
to having no parents.
Tart up model_object_spec

This now specifies lots of properties about move_to and id.