new abstract base class, JSQMediaItem, for pulling out common media item behavior. refactor JSQPhotoMediaItem to inherit from JSQMediaItem. #571