Add strong parameters

This is a big change, please help to review.
Thanks.

cc @soloara