Sachverhalt: A. Am 7. Januar 2016 machte B._ beim Bezirksgericht Aarau ein Eheschutzgesuch anhängig. Sie ersuchte unter anderem darum, ihren Ehemann A._ zu verpflichten, ihr ab Januar 2016 an den Unterhalt der beiden Töchter C._ und D._ einen monatlichen Unterhaltsbeitrag von je Fr. 800.-- (zuzüglich allfälliger Kinderzulagen) und einen persönlichen Unterhaltsbeitrag von Fr. 965.-- (allenfalls in dem Umfange höher, in welchem der Kindesunterhalt tiefer ausfällt) zu bezahlen. A._ ersuchte darum, ihn nur zur Bezahlung von Kindesunterhalt (monatlich Fr. 300.-- pro Kind ab 1. Juli 2016, zuzüglich allfälliger Zulagen), nicht aber zu persönlichem Unterhalt an B._ zu verpflichten. Mit Entscheid des Bezirksgerichts vom 1. März 2016 wurde A._ verpflichtet, für die beiden Kinder einen monatlichen Unterhaltsbeitrag von je Fr. 500.-- ab 1. Januar 2016 (zuzüglich allfälliger Kinderzulagen) zu bezahlen. Zudem wurde er verpflichtet, an B._ folgende persönlichen Unterhaltsbeiträge zu bezahlen: vom 1. Januar 2016 bis 29. Februar 2016 Fr. 410.--, vom 1. März 2016 bis 30. Juni 2016 Fr. 850.-- und ab Juli 2016 Fr. 1'080.--. Beiden Parteien gewährte es die unentgeltliche Rechtspflege und Verbeiständung. B. Gegen diesen Entscheid erhob A._ am 6. Mai 2016 Berufung an das Obergericht des Kantons Aargau. Er verlangte die Aufhebung der bezirksgerichtlichen Unterhaltsregelung. Er sei zur Bezahlung von Kindesunterhalt von monatlich Fr. 300.-- je Kind vom 1. Januar 2016 bis 28. Februar 2016 und von Fr. 500.-- je Kind ab 1. März 2016 zu verpflichten. Zudem sei er zu verpflichten, B._ die Hälfte seines 13. Monatslohns zu bezahlen; im Übrigen sei festzustellen, dass er ihr keine weiteren Beiträge an ihren persönlichen Unterhalt bezahlen könne bzw. müsse. Das Gesuch von A._ um aufschiebende Wirkung wies das Obergericht am 13. Juni 2016 ab. Mit Entscheid vom 21. Juni 2016 wies es die Berufung ab. Auf die Anschlussberufung von B._ (auf Prozesskostenvorschuss für das obergerichtliche Verfahren) trat es nicht ein. Die Gerichtskosten des Berufungsverfahrens und die Parteikosten von B._ für dieses Verfahren auferlegte es A._. Zudem gewährte es beiden Parteien die unentgeltliche Rechtspflege und Verbeiständung. C. Am 4. August 2016 hat A._ (Beschwerdeführer) subsidiäre Verfassungsbeschwerde an das Bundesgericht erhoben. Er verlangt die teilweise Aufhebung des obergerichtlichen Entscheids und die teilweise Gutheissung seiner Berufung. Er sei zu verpflichten, B._ (Beschwerdegegnerin) an den persönlichen Unterhalt monatlich Fr. 230.-- (vom 1. Januar 2016 bis 29. Februar 2016) bzw. Fr. 690.-- (ab 1. März 2016) zu bezahlen. Eventualiter sei er einzig ab 1. März 2016 zu einem persönlichen Unterhaltsbeitrag zu verurteilen, und zwar von monatlich Fr. 285.--. Zudem sei er zu verpflichten, der Beschwerdegegnerin die Hälfte seines 13. Monatslohns zu zahlen. Der Beschwerdegegnerin seien die Gerichtskosten des Obergerichts und die Parteikosten des Beschwerdeführers für das Berufungsverfahren aufzuerlegen. Allenfalls sei die Angelegenheit an das Obergericht zur Neubeurteilung zurückzuweisen. Zudem ersucht er (superprovisorisch) um aufschiebende Wirkung und um Gewährung der unentgeltlichen Rechtspflege und Verbeiständung für das bundesgerichtliche Verfahren. Das Bundesgericht hat mit Verfügung vom 5. August 2016 superprovisorisch die aufschiebende Wirkung für die Unterhaltsbeiträge an die Beschwerdegegnerin vom 1. März bis und mit Juli 2016 gewährt. Das Obergericht hat auf Stellungnahme zum Gesuch um aufschiebende Wirkung verzichtet. Die Beschwerdegegnerin hat Abweisung des Gesuchs beantragt. Zudem ersucht sie um unentgeltliche Rechtspflege und Verbeiständung. Mit Präsidialverfügung vom 19. August 2016 hat das Bundesgericht der Beschwerde aufschiebende Wirkung für die Unterhaltsbeiträge bis und mit Juli 2016 gewährt, das Gesuch im Übrigen aber abgewiesen. Das Bundesgericht hat die Akten beigezogen, in der Sache aber keine Vernehmlassungen eingeholt.