You don't need to make a custom battery. They already make flat batteries, of which you could set laptop right on top. I would purchase one of those and focus on fabricating an adapter for the magsafe socket.

As for SATA to CF, as Qwerty mentioned, there are adapters available... actually by several companies, so you can get one on the cheap if you hunt around for one.

For the Compact Flash, make sure you get high-speed, 300x UDMA-enabled Flash, as it's made for this sort of thing.