Ok so I added a little header so I could do precise file lengths and allow the conversion of any file to bmp and back again successfully. I know this is basically retarded but hey, I had fun.
Here is the comand line .Net app.
[>>bmp "filename.???" to "someName.bmp" ]to convert something to a bmp.
[>>bmp filename.??? from somename.bmp ]to pull the file back out of the bmp.
[>>bmp ? ]will list all the command options
UPDATE: This program now allows you to embed any file inside of a prexisting image using the commands:
[>>bmp < file1.??? > hidein < anyimage > as < out.bmp > ] to hide a file inside of an image
[>>bmp < file1.??? > unhidefrom < anyimage > to extract a file from inside of an image
The Images produced are 2-3 times larger than the original file(you are hiding) and depending on the image you are hiding in and the file you are hiding can be anywhere between a fairly faithfull likeness of the original image or a really hideous canvas / pixelation filter applied over and over again.
This is an example of the output. This has been converted to JPG to take less space (and since .Text apparently doesnt like large bmps). Make sure you zoom in if you dont want to see the artificial distortion vs the distortion that makes up the file.