add boost; member functions start lowercase; use optional (instead of maybe); remove old movelet; member data use underscore without camelCase;