Independent idea..I see a few things I could fix. Feedback welcome.