Manually doing what bitaddress.org does I want to create a paper wallet but want to do it manually.  I understand that bitaddress.org automates the process for you.

Do instructions exist which I can follow to do the same thing which bitaddress does to create a paper wallet?
If your familiar with javascript then I think the easiest way to go would be to check out https://github.com/bitcoinjs/bitcoinjs-lib . They offer a client side solution for generating bitcoin address info.  Theres a few examples in the readme as well.