Interning for free is usually really hard on people, it became really hard on me. I also understand the whole legal gray area. That being said, the fact that I interned with the company I'm with before taking a job with them was incredibly advantageous to me in the hiring process. If you can do freelance work (maybe 2 or 3 days a week) while interning for a company that you think may hire you (when you're not freelancing), I would recommend it.