title: How do I make a custom model Field call to_python when the field is accessed immediately after initialization (not loaded from DB) in Django >=1.10?
body: <p>After upgrading from Django <code>1.9</code> to <code>1.10</code>, I've experienced a change in behaviour with a field provided by the django-geolocation package.</p>
  
  <p>This is the change that was made for <code>1.10</code> compatibility that broke the behaviour: <a href="https://github.com/philippbosch/django-geoposition/commit/689ff1651a858d81b2d82ac02625aae8a125b9c9">https://github.com/philippbosch/django-geoposition/commit/689ff1651a858d81b2d82ac02625aae8a125b9c9</a></p>
  
  <p>Previously, if you initialized a model with a <code>GeopositionField</code>, and then immediately accessed that field, you would get back a <code>Geoposition</code> object. Now you just get back the string value that you provided at initialization.</p>
  
  <p>How do you achieve the same behaviour with Django <code>1.10</code>? Is there another method like <code>from_db_value</code> that needs to be overridden to call <code>to_python</code>?</p>