title: IllegalStateException: parcel.readString() must not be null
body: <p>I put <code>Parcelable</code> object in <code>Intent</code> to next <code>Activity</code>:</p>
  
  <pre><code>val intent = Intent(mContext, ShowTestActivity::class.java)
  intent.putExtra("test", test)
  Log.d("myLog", "${intent.getParcelableExtra&lt;Test&gt;("test")}") // No problem
  mContext.startActivity(intent)
  </code></pre>
  
  <p>And get this object in next <code>Activity</code>:</p>
  
  <pre><code>if (!intent.hasExtra("test")) throw Exception("Intent doesn't has 'test' extra")
  val test: Test = intent.getParcelableExtra("test")
  </code></pre>
  
  <p>And here are throwing Exception:</p>
  
  <pre><code>public open class QBase(): Parcelable {
    ...
    protected constructor(parcel: Parcel?) : this() {
        parcel?.let {
            question = parcel.readString() // parcel.readString() must not be null
            helpText = parcel.readString()
            qValue = parcel.readDouble()
            qType = QType.valueOf(parcel.readString())
        }
    }
    override fun writeToParcel(parcel: Parcel, flags: Int) {
        parcel.writeString(question)
        parcel.writeString(helpText)
        parcel.writeDouble(qValue)
        parcel.writeString(qType.name)
   }
    ...
  }
  </code></pre>
  
  <p>And in Test:</p>
  
  <pre><code>public class Test(): Parcelable {
    ...
    public var questions: ArrayList&lt;QBase&gt; = ArrayList()
  
    constructor(parcel: Parcel?): this() {
        parcel?.let {
          ...
          parcel.readTypedList(questions, QBase.CREATOR)
        }
    }
  
    override fun writeToParcel(p: Parcel?, p1: Int) {
        p?.let {
            ...
            it.writeTypedList(questions)
        }
     }
     ...
  }
  </code></pre>
  
  <p>It is an exception:</p>
  
  <blockquote>
    <p>Caused by: java.lang.IllegalStateException: parcel.readString() must not be null
                                                                                       at com.vadim.hasdfa.justlearn.Model.Questions.utils.QBase.(QBase.kt:22)
                                                                                       at com.vadim.hasdfa.justlearn.Model.Questions.utils.QBase$CREATOR.createFromParcel(QBase.kt:70)
                                                                                       at com.vadim.hasdfa.justlearn.Model.Questions.utils.QBase$CREATOR.createFromParcel(QBase.kt:68)
                                                                                       at android.os.Parcel.readTypedList(Parcel.java:2432)
                                                                                       at com.vadim.hasdfa.justlearn.Model.Test.(Test.kt:28)
                                                                                       at com.vadim.hasdfa.justlearn.Model.Test$CREATOR.createFromParcel(Test.kt:47)
                                                                                       at com.vadim.hasdfa.justlearn.Model.Test$CREATOR.createFromParcel(Test.kt:45)
                                                                                       at android.os.Parcel.readParcelable(Parcel.java:2787)
                                                                                       at android.os.Parcel.readValue(Parcel.java:2681)
                                                                                       at android.os.Parcel.readArrayMapInternal(Parcel.java:3048)
                                                                                       at android.os.BaseBundle.unparcel(BaseBundle.java:257)
                                                                                       at android.os.BaseBundle.containsKey(BaseBundle.java:435)
                                                                                       at android.content.Intent.hasExtra(Intent.java:6859)
                                                                                       at com.vadim.hasdfa.justlearn.Controller.Activity.BrowseTest.ShowTestActivity.onCreate(ShowTestActivity.kt:28)
                                                                                       at android.app.Activity.performCreate(Activity.java:6980)
                                                                                       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)
                                                                                       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2770)
                                                                                       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892) 
                                                                                       at android.app.ActivityThread.-wrap11(Unknown Source:0) 
                                                                                       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593) 
                                                                                       at android.os.Handler.dispatchMessage(Handler.java:105) 
                                                                                       at android.os.Looper.loop(Looper.java:164) 
                                                                                       at android.app.ActivityThread.main(ActivityThread.java:6540) 
                                                                                       at java.lang.reflect.Method.invoke(Native Method) 
                                                                                       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 
                                                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) </p>
  </blockquote>