don't seed on startup if migrations are pending
running seeds on startup could cause unexpected issues if there are pending migrations, in that case it is better to bail and inform the user that migrations need to run.
Make sure that migartions have run before attempting to run seeds, to
ensure we don't get into a wierd state of the database if the app is
started before the db has been migrated.
Also, catch and log errors during seeding to prevent passanger from
failing to start if an error occurs.