merge trunk and stwo's fork