Sachverhalt: A. B._ (geb. 1979) und A._ (geb. 1973) sind die Eltern von C._ (geb. 2002) und D._ (geb. 2006). Die Eltern leben seit den späten 90er-Jahren in der Schweiz. Sie heirateten im Sommer 2001. Im Herbst 2011 wurde ihre Ehe geschieden. Die Kinder blieben in der gemeinsamen elterlichen Sorge und wohnten bei der Mutter. B. Am 20. März 2013 entzog die KESB U._ der Mutter die Obhut über die Kinder und gab sie in diejenige des Vaters. Am Folgetag verlangte die Mutter die Abänderung des Scheidungsurteils und beantragte namentlich, die Kinder seien in ihre alleinige elterliche Sorge und Obhut zu geben. Der Vater forderte später ebenfalls das alleinige Sorge- und Obhutsrecht. Das Kreisgericht See-Gaster gab die Kinder mit Entscheid vom 11. Juni 2014 in die alleinige elterliche Sorge und Obhut der Mutter, unter Einräumung eines Besuchsrechts an den Vater an jedem zweiten Wochenende von Freitagabend bis Montagmorgen und eines Ferienrechts von vier Wochen, unter Weiterführung der Beistandschaft, unter Anordnung einer sozialpädagogischen Familienbegleitung und unter Regelung des Kinderunterhaltes. Dagegen erhob der Vater Berufung. Am 10. Oktober 2014 setzte das Kantonsgericht St. Gallen eine Kindesvertretung ein und im Dezember 2014 beauftragte es die Psychiatrischen Dienste V._ (KJPD W._) mit einer kindespsychiatrischen Begutachtung, welche am 12. März 2015 erstattet wurde. Mit Entscheid vom 9. Juni 2015 beliess das Kantonsgericht die beiden Kinder unter der gemeinsamen elterlichen Sorge und ordnete im Wesentlichen an, dass sie ab dem 4. Juli 2015 bei der Mutter wohnen und zur Hauptsache von ihr betreut werden. C. Gegen diesen Entscheid hat A._ am 1. Juli 2015 eine Beschwerde eingereicht, im Wesentlichen mit den Begehren um dessen Aufhebung und Festsetzung einer alternierenden Obhut, unter neuer Festlegung der Kinderunterhaltsbeiträge. Mit Präsidialverfügung vom 21. Juli 2015 wurde der Beschwerde antragsgemäss die aufschiebende Wirkung erteilt. In der Sache selbst wurden keine Vernehmlassungen, aber die kantonalen Akten eingeholt.