In 'commnet' table, I have done the followings:

- rename 'link' column to 'link_object_id' to be inline with other
  tables as Laravel want foreign keys to be named with id at the end of
column name

- rename 'link_object' to 'link_object' type to be more clear and change
  the type to char(15) from enum as laravel underlying ORM do not
support ENUM type

- have to use RAW SQL because Laravel migration always throwing
  exception complaining about ENUM column type
I am sure column name target_id is more meaningful than link_object_id.
It shows that this is the target of the comment we are making againt.
So, I am renaming columns link_object_id and link_object_type to
target_id and target_type respectively.
I have found out that I forgot to drop old indexes, then to add new indexs
when renaming columns in comment and photo tables. I went back to
migration scripts and added necessary changes, then tested.
- written code for comment unit test and model
- tested both