add different_components. closed #5
add time support. closed #4